| 問題 | 回答 |
|---|---|
| 這個作業屬於哪個課程 | C語言程序設計ll |
| 這個作業要求在哪里 | http://edu.cnblogs.com/campus/zswxy/SE2019-2/homework/10100 |
| 我在這個課程的目標是 | 熟練掌握運用各語法,獨自寫出代碼解決許多計算題,編寫出一個小程序 |
| 這個作業在哪個具體方面幫助我實現目標 | 回顧之前學過的內容,使得自己能更熟練地運用各語法語句 |
| 參考文獻 | 《C語言程序設計》 CSDN |
1. PTA實驗作業

1.1 題目7-8輸出三角形字符陣列
題目內容描述:本題要求編寫程序,輸出n行由大寫字母A開始構成的三角形字符陣列。
1.1.1 數據處理
- 數據表達:定義了整型變量n,i,j,整型字符c。 n,i,j分別表示 輸入的正整數,三角形字符陣列的行列循環次數
- 數據處理:使用了嵌套循環,嵌套循環中用了for語句
int定義變量正整數n,行列循環次數i,j; char定義字符變量c並賦值A; 輸入正整數n; for(初始條件;i<=n;i自增) { for(初始條件;j<=n;j自增) { 輸出c,並加上空格; c自增; } 輸出換行的條件; } return 0; }
1.1.2 實驗代碼截圖

1.1.3 造測試數據
| 輸入數據 | 輸出數據 | 說明 |
|---|---|---|
| 4 | ![]() |
有4行 |
| 5 | ![]() |
有5行 |
| 8 | ![]() |
不符合題目要求 |
1.1.4 PTA提交列表及說明

提交列表說明:
- 答案錯誤:未給 c 賦值為 A
- 多種錯誤:答案錯誤和運行超時,將 j<n 改為 j<=n
- 多種錯誤:答案錯誤和格式錯誤,("%c",c)不小心寫成了("%d",c)
- 格式錯誤:輸出后每個字母后面都有空格,所有 "%c" 應改為 "%c "
1.2 題目7-4同構數
題目內容描述:一個數恰好出現在它的平方數的右端,這個數就稱為同構數。找出1~1000之間的全部同構數。
1.2.1 數據處理
- 數據表達:定義了整型變量i
- 數據處理:使用了嵌套循環,嵌套循環中用了if語句
int定義變量 for(初始條件;i<=1000;i自增) { if(0<=i與i<=9) { if(i==(ii)取余; 輸出i,i前面6個空格; } if(10<=i與i<=99) { if(i==(ii)取余; 輸出i,i前面6個空格; } if(100<=i與i<=999) { if(i==(i*i)取余; 輸出i,i前面6個空格; } if(i==1000) { 當i為1000時,顯然不是同構數,所以不做判定 } } } return 0; }
1.2.2 實驗代碼截圖

1.2.3 造測試數據
| 輸入數據 | 輸出數據 | 說明 |
|---|---|---|
| 無輸入 | ![]() |
1-1000內滿足條件的同構數 |
1.2.4 PTA提交列表及說明

提交列表說明:
- 編譯錯誤:不知道哪錯了,然后重新開始寫了
- 答案錯誤:i<=1000寫成了i<1000
- 答案錯誤:有幾個 < 后少了一個 =
- 答案錯誤:%10,%100,%1000寫成了%1,%10,%100
- 答案錯誤:沒有寫if(i==1000)
- 格式錯誤:將所有("%d",i)都改成了("%d", i),然而還是錯的
- 格式錯誤:將所有("%d", i)都改成了("6.%d", i)
- 格式錯誤:將所有("%d", i)都改成了("%6d", i)
2. 代碼互評
同學代碼截圖

自己代碼截圖

代碼對比
- 第一位同學頭文件有int number(int i);因為她調用了函數
- 第一位同學使用了for語句,while語句,if語句,我和第二位同學沒有使用while語句,我們都使用了嵌套循環
- 我是將1-1000分為四段從而得出各段的同構數,她是將1-1000做為一個整體在計算
- 我覺得我的代碼比較簡單清晰,她的代碼也非常的好,感覺比較高級的樣子
3. 學習總結
3.1 學習進度條
| 周/日期 | 這周所花時間 | 代碼行 | 學到的知識點簡介 | 目前比較迷惑的問題 |
|---|---|---|---|---|
| 7/10.9-7/10.11 | 21小時 | 120 | else-if從句,關系運算 | PTA顯示的答案錯誤究竟是什么 |
| 8/10.16-8/10.18 | 15小時 | 84 | 用for語句計算簡單的序列和 | 雙精度浮點型變量的定義 |
| 9/10.23-9/10.26 | 16小時 | 102 | 學到while語句的一點點知識,對自定義函數了解了一點 | while語句的具體用法 |
| 10/10.30-10/11.2 | 14小時 | 145 | 多分支結構,邏輯運算符 | 當分支較多時不太會使用if,else,for |
| 11/11.6-11/11.8 | 14小時 | 143 | 利於switch語句處理多分支選擇問題 | 偽代碼的具體定義 |
| 12/11.13-12/11.15 | 15小時 | 75 | 使用while語句進行循環計算 | do-while語句和while的區別還不是特別理解 |
| 13/11.20-13/11.22 | 13小時 | 91 | 使用continue語句進行循環,使用嵌套循環進行計算 | 還是有點分不清break語句和continue語句的區別 |
| 14/11.27-14/11.29 | 13小時 | 125 | 對循環結構進行了鞏固復習和總結 | 當遇到比較復雜的嵌套循環時會出現混亂 |
3.2 累積代碼行和博客字數
| 時間 | 博客字數 | 代碼行數 |
|---|---|---|
| 第四周 | 596 | 32 |
| 第五周 | 1288 | 54 |
| 第七周 | 2240 | 174 |
| 第八周 | 3254 | 364 |
| 第九周 | 6124 | 512 |
| 第十周 | 8085 | 796 |
| 第十一周 | 9625 | 1030 |
| 第十二周 | 11172 | 1185 |
| 第十三周 | 14142 | 1356 |
| 第十四周 | 15742 | 1567 |

3.3 學習內容總結和感悟
3.3.1 學習內容總結


3.3.2 學習體會
- 看到很多同學的代碼,發現大家的代碼有很多種,多讀讀不同的代碼,對自己的幫助很大
- 將學過的知識做成思維導圖真的挺好的,將各個知識點划分了區域,腦海里一下子就可以呈現出各語法的區別與聯系
- 其實自己很迷茫的,感覺自己沒達到自己預想的效果,要加強自學能力
- 進步還是有的,就像老師說的那樣,我們用與以前差不多的時間做出了比以前更難的題




