C博客作業01--分支,順序結構


本章學習總結(2分)

1.1思維導圖

1.2本章學習體會及代碼量學習體會

1.2.1學習體會

  • 本周初次接觸C語言,一開始難度較大,很多代碼都看不懂,書里面的章節要看很多遍。開始編寫代碼時也遇到很多困難,一開始沒有電腦,用手機打代碼非常低效,很多時候一個小時僅僅能做完PTA的兩道題目,而且沒有調試工具,題目很多沒有編譯運行過就上交,出現過很多編譯錯誤。為了彌補在效率上的不足,經常在早上六點起來寫代碼。
  • 我的學習方法主要是看書,延長學習時間。軍訓過后體力有所消耗,學習起來有些乏力,上課經常打瞌睡,學習狀態不是很好。很多時候明明晚上睡了8小時第二天還是覺得很疲憊,接下來要認真分析原因了。估計是一開始不適應。
  • 老師上課的進度很快而且不是照搬課本,經常講一些課本里面沒有的知識,比如精度問題,if關於0和1的判斷,二進制,數據在電腦中的儲存。開始很不適應,很多知識因為書本沒有,不好理解,希望老師推薦一本比較好的C語言的參考書,幫助我們課后學習。課堂派里面的作業很有代表,有很多書本里面沒有涉及的變化,很多時候我認為正確的答案不一定是運行結果,機器理解的語言和我理解的有偏差。
  • 現在學習的知識還比較簡單,老師教學的知識基本理解。但是在上機操作這塊我掌握的還比較薄弱,第一點原因是接觸得少,原來沒有電腦,在實踐方面不行。第二點原因是在調試方面的知識掌握不牢固,因為書上沒有編寫,不好復習。第三點原因是我本人打字較慢,這點需要提升。第四點原因是我對C語言的語法知識還不是特別熟練,經常會有編譯錯誤。
  • 助教比較認真負責,是一位親切的學長。他指出我在注釋方面的不足,教我如何注釋。

1.2.2代碼累計

2.PTA總分(2分)

2.1截圖PTA中順序結構、分支結構的排名得分

2.2我的總分:

第一章順序結構:100分
第二章分支結構:125分
總分:225分

PTA實驗作業(6分)

3.1PTA題目1]

計算分段函數f(x)如果x不等於0,f(x)等於1/x。如果x等於0,f(x)等於0。輸入x,必須以f(x)= result輸出,x與result都保留一位小數。

3.1.1算法分析

  • 1.用double定義變量x和結果result。
  • 2.x是輸入數據。輸入x。
  • 3使用if-else語句。
  • 4.如果x不等於0,result=1/x,輸出“f(x)= result”
  • 5.其他情況,輸出“f(x)= 0”
  • 6.x和result保留一位小數。

3.1.2代碼截圖

3.1.3測試數據

3.1.4PTA提交列表及說明

  • Q1: 沒有認真看題目,出現答案錯誤。
  • A1:注意到題目要求,把變量y改為result。
  • Q2:開始編輯程序時沒有電腦,不能對程序進行編譯運行和調試,直接就上交導致有很多編譯錯誤。
  • A2:上交了很多次,都是編譯錯誤,一開始以為是分號用成了中文符的分號,不斷改正不斷提交,到后面才發現是定義變量時的result寫成reult。有時候為了發現一個小錯誤,要花費很多時間。
  • ps:這道題是簡單題,我確做錯了那么多次,這說明我還不熟練,需要多看書多練習。

3.2PTA題目2

輸入一個百位數,輸出其百位、十位和個位,並用逗號隔開。

3.2.1算法分析

  • 1.用int定義數字number,百位hundred,十位ten,個位one。
  • 2.輸入數字number
  • 3.通過number/100得出百位hundred。
  • 4.通過number/10%10得出十位ten。
  • 5.通過number%10得出個位one。
  • 6.輸出hundred,ten,one的值中間用逗號隔開。

3.2.2代碼截圖

3.2.3測試數據

3.2.4 PTA提交列表及說明

  • ps:這一題比較簡單,屬於順序結構。
  • Q1:C語言的語法不熟練,產生編輯錯誤。
  • A1:使用scanf()函數時忘記加&。
  • A3:后來重新編輯,雖然答案正確,但是變量名不規范。把number,hundred,ten,one作為變量。

3.3PTA題目3

輸入三角形的三條邊a,b,c計算並輸出面積和周長。三角形面積計算公式:area=√​s(s−a)(s−b)(s−c),其中s=(a+b+c)/2。保證三角形的兩邊之和大於第三邊。如果輸入的邊能構成一個三角形,則在一行內,按照“area = 面積; perimeter = 周長”
的格式輸出 ,保留兩位小數。否則,輸出“These sides do not correspond to a valid triangle”。

3.3.1 算法分析

  • 1.需要調用數學函數#include<math.h>計算根號。
  • 2.用int定義三角形的三邊a,b,c。用double定義面積area和周長perimeter。
  • 3.輸入三角形的三邊a,b,c。
  • 4.通過加法運算,算出三角形的周長。
  • 5.判斷三邊是否成三角形,如果成三角形,用公式s=1.0(a+b+c)/2算出s,1.0是為了把數據調整為浮點型數據。使用pow函數算出三角形面積 area=pow(s(s-a)(s-b)(s-c),0.5) ,輸出面積和周長,保留兩位小數。
  • 6.如果不成三角形則輸出“These sides do not correspond to a valid triangle”

3.3.2代碼截圖

3.3.3測試數據

3.3.4 PTA提交列表及說明


  • ps:這題屬於令我抓狂的一題,做了很多遍依然不得要領,在 同學的幫助下最后解決問題。
  • Q1:思維較混亂,產生編輯錯誤。
  • A1:誤刪了一個中括號,經過檢查增加一個中括號。
  • Q2:沒有注意數據類型,產生答案錯誤。
  • A2:發現整數除以整數還是整數,所以在s的公式中乘了1.0調整數據類型為浮點型數據。
  • Q3:邏輯判斷不明確,編寫程序不認真,導致答案部分正確。
  • A3:經過檢查發現自己對是否成三角形的邏輯判斷不清,不清楚成三角形所要具備的條件。經過修改把||改為了&&,同時三個條件並在一起,保證接下來判斷的 一定是三角形。之后發現當不成三角形時答案依舊是錯的,經過檢查,原來是“These sides do not correspond to a valid triangle”這句話寫錯了。

4.點評同學博客


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM