C語言I博客作業07


C語言I博客作業07

作業頭

這個作業屬於那個課程 C語言程序設計
這個作業要求在哪里 https://edu.cnblogs.com/campus/zswxy/SE2020-3/homework/11586
我在這個課程的目標是 <靈活運用while語句,復習,簡化代碼>
這個作業在那個具體方面幫助我實現目標 <題目需要靈活變通,應多方考慮,訓練思維能力>
參考文獻 <C語言程序設計>

本周作業

PTA實驗作業
代碼互評
學習總結

1.PTA實驗作業(20分/題)

1.1 購物(二) (25分)

用戶購買了若干個商品(商品數不超過10),現在,他告訴你每件商品的價格,你計算出這些商品的平均價格。
1.1.1數據處理

數據表達:設置浮點型變量a,s分別輸入商品價格和計算總價,設置整形變量i初始化為0令其計數;
數據處理:Begin Input a; i←0; if(a<0)then{Output 0.00; End} while(a>=0&&i<10) do {s=←s+a;i++} x←s/i; Output x End

1.1.2實驗代碼截圖

1.1.3 造測試數據

輸入 輸出 說明
-1 0.00 商品數量為0
1 -1 1.00 商品數量為1
890.78 2769.8 12300 3532.2 -1 4873.19 商品數量為4
1 2 3 4 5 6 7 8 9 10 -1 5.50 商品數量為10

1.1.4 PTA提交列表及說明

提交列表說明:
編譯錯誤:scanf誤寫成scanf_s,編譯器無法識別;
解決方法:去掉_s
部分正確:未考慮到商品數量為零,直接輸入-1的情況;
解決方法:在進行while循環前進行判斷,若輸入為負數,則輸出0.00,結束程序

1.2 猜數字游戲

猜數字游戲是令游戲機隨機產生一個100以內的正整數,用戶輸入一個數對其進行猜測,需要你編寫程序自動對其與隨機產生的被猜數進行比較,並提示大了(“Too big”),還是小了(“Too small”),相等表示猜到了。如果猜到,則結束程序。程序還要求統計猜的次數,如果1次猜出該數,提示“Bingo!”;如果3次以內猜到該數,則提示“Lucky You!”;如果超過3次但是在N(>3)次以內(包括第N次)猜到該數,則提示“Good Guess!”;如果超過N次都沒有猜到,則提示“Game Over”,並結束程序。如果在到達N次之前,用戶輸入了一個負數,也輸出“Game Over”,並結束程序。
1.2.1 數據處理

數據表達:設置整形變量x,a,i,n,其中a用來儲存設置的隨機數,n為設置的最大輸入次數,i為計數器,x為輸入的測試值;
數據處理:Begin	Input a n; i←0; while (i <= n)do {Input x if (x > a)then {Output Too big; i++;} else if (x < a && x >= 0) then{Output Too small; i++;} else if (x < 0) {Out put Game Over; End;} else if (x == a) {i++; if (i == 1) then{Output Bingo!; return 0;} else if (i > 1 && i <= 3) then{Output Lucky You!; return 0;} else if(i > 3 && i <= n) then{Output Good Guess; return 0;}}} Output Game Over; End

1.2.2 實驗代碼截圖

1.2.3 造測試數據

輸入 輸出 說明
58 4 70 50 56 58 60 -2 Too big Too small Too small Good Guess! 第四次正確
58 4 -1 Game Over 直接退出
58 4 1 Bingo! 一次正確
58 4 70 Too big 比答案大

1.2.4 PTA提交列表及說明

部分正確:輸出內容錯誤,遺漏一種情況;
解決方法:更正輸出內容,補上遺漏的情況

2.代碼互評(5分)
找2份同學代碼,和自己代碼比較,建議互評代碼盡量找代碼風格差異較大。

自己代碼截圖

1:第一位同學只用了while循環,一步解決了問題,比我的代碼簡短很多;
2:第二位和我一樣用了while循環和if判斷,用法不盡相同,但卻異曲同工

3.學習總結(15分)

3.1 學習進度條(5分)

周/日期 這周所花的時間(h) 有效代碼行 學到的知識點簡介 目前比較迷惑的問題
3/2-3/8 4(課堂)+4(課后)=8(h) 約156行 for循環 同樣的代碼在visual studio軟件與pta網站上輸出答案不同(疑惑)
4/9-4/15 4+4.5=8.5 約227行 定義和調用函數 編譯器gcc與clang的區別與使用
5/16-5/22 4+4=8 約223行 條件語句,嵌套結構 嵌套的方法,字符的儲存
6/23-6/29 4+6=10 428 選擇語句,判斷語句 如何把代碼寫的簡單,短小精悍
7/30-7/6 4+4=8 256 while循環,do-while循環 應訓練縝密思維,多方考慮

3.2 累積代碼行和博客字數(5分)

3.3 學習內容總結和感悟(5分)
3.3.1 學習內容總結

3.3.2 學習體會
這一周學習了while語句,因為學習過for循環所以學起來比較輕松,這次pta作業的問題重點在詳細考慮問題,減少錯漏,以及代碼的簡化。

士不可以不弘毅
任重而道遠


免責聲明!

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



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