C語言I博客作業07


這個作業屬於哪個課程 C語言程序設計II
這個作業要求在哪里 https://edu.cnblogs.com/campus/zswxy/CST2020-1/homework/11588
我在這個課程的目標是 更好的理解現在所學習的內容,補充細節和框架
這個作業在哪個具體方面幫助我實現目標 思維導圖和代碼互評
參考文獻 《C Primer Plus》《C語言程序設計》(第三版)

1.PTA實驗作業

1.1 實驗6-9 統計一行文本的單詞個數 (15分)

本題目要求編寫程序統計一行字符中單詞的個數。所謂“單詞”是指連續不含空格的字符串,各單詞之間用空格分隔,空格數可以是多個。

1.1.1 數據處理

數據表達:
1.變量count:整型,由賦值得來;
2.變量ch,bh:字符型,由輸入得來;
數據處理:
表達式:賦值表達式,邏輯表達式,算數表達式;
流程結構:while語句,if-else語句。
偽代碼:
getchar()輸入一個字符放入bh
while定為死循環
將bh賦值給ch
再使用getchar輸入一個字符放入bh
if bh != ' ' 且ch == ' ',則count+1,累積一個單詞
if ch == '\n',則跳出while循環,即語句輸入結束
if bh == ' ',即空格結尾,嘖count累計數-1
輸出count

1.1.2 實驗代碼截圖

1.1.3 造測試數據

輸入數據 輸出數據 說明
Let's go to room 209. 5 判斷得出有五個單詞
let 1 前后都有空格,但只有一個單詞

1.1.4 PTA提交列表及說明


1.部分錯誤:空格結尾,以及1個最短單詞,前有空格,以及全空格的測試點沒有通過;
2.部分錯誤:經過調整后全空格和最短單詞時測試通過,但其他的點又錯誤了。

1.2 實驗4-1-9 猜數字游戲 (15分)

猜數字游戲是令游戲機隨機產生一個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 數據處理

數據表達:
1.變量x,n:為整型,由輸入得來;
2.變量a[100]:為整型數組,由輸入得來;
3.變量i,sum,flag,m:由賦值得來;
數據處理:
表達式:賦值表達式,計算表達式,關系表達式。
流程結構:while循環,for循環,if-else語句。
偽代碼:
初始化flag=0,sum=0
輸入x,n
for (int i = 0; i < n; i++)
輸入a
if a<0,則break,跳出for循環
else if a>x,則sum++,輸出"Too big\n"
else if a<x,則sum++,輸出"Too small\n"
else 
sum++,令flag = 1
if sum == 1輸出"Bingo!\n"
else if sum <= 3輸出"Lucky You!\n"
else 輸出"Good Guess!\n",則break,跳出for循環
如果flag=0,則輸出"game over\n"

1.2.2 實驗代碼截圖

1.2.3 造測試數據

輸入數據 輸出數據 說明
只比較四次,且第四次正好猜對
只比較三次,且第三次正好猜對
比較五次,但是第三次已經猜對,於是只輸出三行

1.2.4 PTA提交列表及說明


1.多種錯誤:包括格式錯誤:輸出沒有換行,答案錯誤:沒有及時退出等錯誤;
2.部分正確:超過N次猜對無效,3次猜中,sample 超過3次、正好N次猜出測試點錯誤;
3.編譯錯誤:在vs改正后復制粘貼時,少復制了一部分;
4.部分正確:3次猜中測試點沒有通過。

2.代碼互評

同學代碼:

自己代碼:

同學的代碼直接用數學公式講雞蛋總和計算了出來,而我則是用for循環一個一個試出來,同學的代碼比我的更簡便,用的時間也更少。

3.學習總結

3.1學習進度條

周/日期 這周所花時間 代碼行 學到的知識點簡介 目前比較困惑的問題
第八周 30小時 600 基礎知識,輸入輸出函數if-else語句
第九周 30小時 700 for循環,while循環,switch語句,數組 怎樣用數組打出金字塔和蛇形數組
第十周 30小時 500 二維數組的使用
第十一周 25小時 550 自定義函數,命名法 怎樣解決自己的暴力解題思路,讓代碼更直觀簡潔
第十二周 27小時 550 string.h 怎樣解決自己的暴力解題思路,讓代碼更直觀簡潔
第十三周 25小時 600 不知道自己該往哪學
第十四周 26小時 650

3.2累積代碼行和博客字數

3.3學習內容總結和感悟

3.3.1學習內容總結

3.3.2學習體會

這周上課更系統的學習了do-while,比我之前所了解的更透徹了一些,寫題也能夠有更多的方法了,希望下周也可以在原本所學過的基礎上再加強一些。


免責聲明!

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



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