C語言I作業04


本周教學內容&目標
第2章 用C語言編寫程序-循環結構 2.4 輸出華氏-攝氏溫度轉換表。要求學生掌握使用for循環語句實現指定次數的循環程序設計。

這個作業屬於那個課程 C語言程序設計II
這個作業要求在哪里 https://edu.cnblogs.com/campus/zswxy/CST2019-4/homework/9772
我在這個課程的目標是 要求掌握使用for循環語句實現指定次數的循環程序設計。
這個作業在那個具體方面幫助我實現目標 for語句的正確使用。
參考文獻

1.PTA實驗作業
1.1 題目名1

本題要求編寫程序,計算交錯序列 1-2/3+3/5-4/7+5/9-6/11+... 的前N項之和。 

1.1.1數據處理

數據表達:運用int(整型),double(雙浮點型)定義變量。
數據處理:流程控制使用順序結構for循環語句。

1.1.2實驗代碼截圖

1.1.3 造測試數據

輸入數據 輸出數據 說明
5 0.197 n小於10
10 0.380 n等於10
20 0.386 n大於10
-1 Invalid Value! 小於0

1.1.4 PTA提交列表及說明

提交列表說明:

1.編譯錯誤:for語句中分號按錯。修改for語句中的;
2.運行超時:for語句中邏輯錯誤。
3.答案錯誤:對於for語句中i+2,和2*i-1理解不到位。

1.2 題目2

本題要求對兩個正整數m和n(m≤n)編寫程序,計算序列和m2​​+1/m+(m+1)​2​​+1/(m+1)+⋯+n2+1/n。

1.2.1 數據處理

數據表達:運用int(整型),double(雙浮點型)定義變量。
數據處理:流程控制使用順序結構for循環語句。運用sum+省略sum=sum+m*m+1.0/m減少內存空間使用。

1.2.2 實驗代碼截圖

1.2.3 造測試數據

輸入數據 輸出數據 說明
5 10 355.845635 m<=n
5 5 0.917 m=n
-1 10 0.000 (nvalid Value!) m<0,n>0

1.2.4 PTA提交列表及說明

1.段錯誤:程序可以執行但是輸出的答案不正確,我也不知道錯在哪里。
2.段錯誤:修改過后,程序可以執行,但是輸出答案不正確。
3.答案正確:其實在編譯器上執行過很多次,發現用手機打的時候題目看錯,再加上題目理解不到位。

1.3 題目3

本題要求編寫程序,計算交錯序列 1-2/3+3/5-4/7+5/9-6/11+... 的前N項之和。

1.3.1 數據處理

數據表達:運用int(整型),double(雙浮點型)定義變量。
數據處理:流程控制使用順序結構for循環語句。使用循環體賦值x=-x改變x的正負。

1.3.2 實驗代碼截圖

1.3.3 造測試數據

輸入數據 輸出數據 說明
10 0.380 輸入值為正數
-1 0.000 (nvalid Value!) 輸入值為負數

1.3.4 PTA提交列表及說明

其實多次使用編譯器,發現輸出答案總是不正確,后來發現for語句中的邏輯錯誤。
1.段錯誤:運用編譯器發現for語句中的邏輯出現錯誤,所有for語句中的計算式全部修改序,不使用一步到位的計算式,而是運用一步一步的計算式,修改后答案正確。

代碼互評

其他同學的代碼類似,就去網上找了代碼。

1.該代碼使用巧妙,運用double,來處理計算式(雖然還是沒有看懂是怎么回事),開始我也想運用pow形式來列出計算式,可是屢次嘗試總是出錯,可能是因為沒有使用double的原因吧。


2.前面的代碼相比我的,我感覺我的比較啰嗦,可是為了防止for語句中出現錯誤,就想找到更簡單的方法,上面的那個代碼,是我理想追求的,可是現在還是不了解計算式中使用double的原因。
3.(新添加代碼)因為在作業之后有去做了點題目,改進了一下代碼,相比我自己之前打的代碼我感覺后面這個要簡單直接點。

學習總結
3.1 學習進度條

|周|這周所花的時間|代碼行|學到的知識點簡介|目前比較迷惑的問題|
|-------|--------|----------|--------|
|一周09-24|4個小時|50行|簡單的打印字句|無|
|二周10-03|5個小時|85行|提問的智慧|無|
|三周10-10|12小時|132行|if-else語句的使用,基本數字的定義,分段函數的計算|無|
|四周10-17|6個小時| 97行 |for循環語句的使用|計算式的加入double的使用方法和含義|


3.3.1 學習內容總結

學習for的循環語句,在for語句進行循環 {} 中的內容已達到自己計算的目的。

3.3 學習內容總結和感悟
圖1

圖2

1.使用for循環語句最怕出現邏輯錯誤,如果在比較大的程序中發現邏輯錯誤是很被發現的,甚至導致全程序重新寫,所以寫關於*邏輯程序是一定要把邏輯關系搞清楚*。
2.學習到的小方法:
解釋:圖片在上面
圖1.在等值過程中 盡量使用 3==x 這樣等值,,因為地址變量才可以被賦值,如果是常量賦值在左就是錯誤的,如果在編程過程中出現等值錯誤(3=x,少寫了=),就可利用編譯語法查找錯誤所在。
圖2.if語句后的語句用大括號括起來(補充語句也要在大括號內,總之if語句后的語句要用大括號括起來),在這個程序中想加語句過程忘記加 “{”  如果編譯出錯還好,若編譯成功,輸出錯誤,那可能就要重新寫代碼了,那就麻煩大。
3.for語句()中的內容用 ; 隔開,語句后不能使用 ; 若使用會被視為空語句。
4.時間過得好快啊,感覺自己學習c語言的能力在不斷的加強,這還得感謝百度,人是被逼出來的,沒有關系,我不會,但是我會努力的學習,提高自己解決問題的能力。相信自己可以的,慢慢來吧!


免責聲明!

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



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