| 這個作業屬於那個課程 | C語言程序設計II |
|---|---|
| 這個作業要求在哪里 | https://edu.cnblogs.com/campus/zswxy/CST2020-2/homework/11557 |
| 我在這個課程的目標是 | 進一步學習分支結構,並且熟練的運用 |
| 這個作業在那個具體方面幫助我實現目標 | 學習switch語句,擴充分支結構的知識 |
| 參考文獻 | C Primer Plus(第6版中文版) |
| 學號 | 20208983 |
一、本周作業
1.PTA實驗作業

1.1 計算天數
要求編寫程序計算某年某月某日是該年中的第幾天。
1.1.1數據處理
數據表達:用到了需要輸入的整型a, b, d, f;字符型c;
數據處理:
1.表達式:case 1:f=0;break;
case 2:f=31;break;
case 3:f=60;break;
case 4:f=91;break;
case 5:f=121;break;
case 6:f=152;break;
case 7:f=182;break;
case 8:f=213;break;
case 9:f=244;break;
case 10:f=274;break;
case 11:f=305;break;
case 12:f=335;break;
case 1:f=0;break;
case 2:f=31;break;
case 3:f=59;break;
case 4:f=90;break;
case 5:f=120;break;
case 6:f=151;break;
case 7:f=181;break;
case 8:f=212;break;
case 9:f=243;break;
case 10:f=273;break;
case 11:f=304;break;
case 12:f=334;break;
2.流程結構:
運用到了switch語句和if-else語句
1.1.2實驗代碼截圖


1.1.3 造測試數據
| 輸入數據 | 輸出數據 | 說明 |
|---|---|---|
| 2009/03/02 | 61 | 2009/03/02是該年的61天 |
| 2004/11/02 | 307 | 2004/11/02是該年的307天 |
| 2000/12/02 | 337 | 2000/12/02 是該年的337天 |
| 2018/07/02 | 183 | 2018/07/02 是該年的183天 |
1.1.4 PTA提交列表及說明

問題:部分正確 第27行表達式case 3:f=58;break;計算出錯
解決:改為 case 3:f=59;break;
1.2 多分支表達-倍數問題
鍵盤輸入1個正的整數A,如果A是3的倍數但不是5的倍數,則輸出A除以5的余數。如果A是5的倍數但是不是3的倍數,則輸出A除以3的余數。如果A既不是5的倍數但也不是3的倍數,輸出A除以15的余數
1.2.1 數據處理
數據表達:運用到了需要輸入的整型A
數據處理:
1.表達式:
A%3==0&&A%5!=0
A%5==0&&A%3!=0
A%3!=0&&A%5!=0
2.流程結構:運用到了if-else語句
1.2.2 實驗代碼截圖

1.2.3 造測試數據
| 輸入數據 | 輸出數據 | 說明 |
|---|---|---|
| 18 | 3 | 18是3的倍數,18除以5余3 |
| 25 | 1 | 25是5的倍數,25除以3余1 |
| 37 | 7 | 37既不是3的倍數,也不是5的倍數,37除以15余7 |
| 23 | 8 | 23既不是3的倍數,也不是5的倍數,23除以15余8 |
1.1.4 PTA提交列表及說明

問題:編譯錯誤 第12行表達式A%3!=0&&A%5!==0出現錯誤,多打了一個等號
解決:改為A%3!=0&&A%5!=0
2.代碼互評
同學代碼截圖

自己代碼截圖

1.同學定義了兩個整型變量,而我只定義了一個整型變量
2.同學用到了三個if語句,來處理;而自己用到了if-else if語句,
3.同學的代碼比較整齊,自己的代碼比較簡潔
3.學習總結
3.1 學習進度條
| 日期 | 所花時間 | 代碼行 | 學習內容 | 迷惑點 |
|---|---|---|---|---|
| 第一周10.12——10.18 | 8h | 30行 | 變量的類型 | 無 |
| 第二周10.19——10.31 | 15h | 110行 | if-else語句 | 無 |
| 第三周11.2——11.8 | 20h | 130行 | for循環 | 無 |
| 第四周11.9——11.15 | 23h | 160行 | 自定義函數 | 無 |
| 第五周11.16——11.22 | 25 | 240行 | 分支結構 | else——if語句的格式 |
| 第六周11.23——11.29 | 26h | 300行 | switch語句 | 無 |
3.2 累積代碼行和博客字數
| 時間 | 博客字數 | 代碼行數 |
|---|---|---|
| 第一周 | 約500 | 30行 |
| 第二周 | 約600 | 110行 |
| 第三周 | 約800 | 130行 |
| 第四周 | 約1000 | 160行 |
| 第五周 | 約1100 | 240行 |
| 第六周 | 約1300 | 300行 |

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

3.3.2 學習體會
1.本周學習了分支語句中的switch語句,並且能運用來解決簡單的問題;
2.經過本周的學習發現自己的缺點,就是做題不仔細,總是出現一些小錯誤,希望在以后的學習中能夠仔細一點,不要出現重復的錯誤。
3.在學習的過程中,知道了學會復習很重要,在本周的學習發現自己對之前學過知識有點模糊,對之前的知識進行復習是非常必要的。
