| 這個作業屬於那個課程 | C語言程序設計II |
|---|---|
| 這個作業要求在哪里 | https://edu.cnblogs.com/campus/zswxy/CST2020-2/homework/11557 |
| 我在這個課程的目標是 | <第3章 分支結構 3.3 使學生熟悉多分支結構switch語句的使用。> |
| 這個作業在那個具體方面幫助我實現目標 | <通過pta的作業鞏固所學到的東西,將switch結構與多分支結構熟練掌握> |
| 參考文獻 | <C語言程序設計> |
1.PTA實驗作業

1.1 多分支表達-倍數問題

1.1.1數據處理
數據表達:定義了整型變量A和remainder,A為輸入的整數,remainder為輸出的余數
數據處理:表達式1:remainder = A % 5;表達式2:remainder = A % 3;表達式3:remainder = A % 15;流程結構:多分支結構,使用了省略else的if語句
1.1.2實驗代碼截圖

1.1.3 造測試數據
| 輸入 | 輸出 | 說明 |
|---|---|---|
| 9 | 4 | 9是3的倍數,除以5的余數是4 |
| 10 | 1 | 10是5的倍數,除以3的余數是1 |
| 11 | 11 | 11既不是3的倍數也不是5的倍數,除以15的余數是11 |
1.1.4 PTA提交列表及說明

提交列表說明:
部分錯誤:把printf("%d\n",remainder);放在了所有if語句之后,在輸入了不是15的倍數時,便不滿足“沒有任何輸出。”的這個條件
編譯錯誤:在修改的時候,少打了引號
1.2 前天是哪天

1.2.1 數據處理
數據表達:定義了整型變量year, month, day;分別為輸入的年月日
數據處理:表達式1:month--;day = day + 27; 2:month--;day = day + 26; 3:month--;day = 28 + day; 4:month--;day = 29 + day;
5:year--;month = 12;day = 29 + day; 6:day = day - 2;流程結構:多分支結構,使用了if-else和switch語句
1.2.2 實驗代碼截圖

1.2.3 造測試數據
| 輸入 | 輸出 | 說明 |
|---|---|---|
| 2020 10 16 | 2020-10-14 | 2020 10 16的前一天是2020-10-14 |
| 2020 1 2 | 2019-12-31 | 2020 1 2 的前一天是 2019-12-31 |
| 2020 3 2 | 2020-2-29 | 2020 3 2 的前一天是 2020-2-29 |
| 2019 3 2 | 2019-2-28 | 2019 3 2的前一天是2019-2-28 |
1.2.4 PTA提交列表及說明

提交列表說明:
部分錯誤:沒有考慮month=1的情況
編譯錯誤:if語句少打了"{"
部分錯誤:把month=1的情況放在了最上面,運算后又會在下面month=12的情況中再次運算一次
2.代碼互評
同學代碼截圖1:

自己代碼截圖:

1.該同學使用了兩次switch語句,而我用了一次switch
2.該同學代碼過長顯得有些繁瑣
同學代碼截圖2:

自己代碼截圖:

1.該同學只使用了if-else,而我使用了if-else和switch
2.該同學雖然代碼長度少,但是if語句中的條件過於繁多
3.學習總結
3.1 學習進度條
| 周/日期 | 這周所花的時間 | 代碼行 | 學到的知識點簡介 | 目前比較迷惑的問題 |
|---|---|---|---|---|
| 第一周 | 7h | 45 | 顯示hallo world,數據類型,求攝氏溫度 | 對一些字符的含義不理解 |
| 第二周 | 12 h | 98 | 學會一些基本的運算符,和printf的格式 | 對數據類型的選擇不太清楚 |
| 第三周 | 21 h | 146 | 學會了if-else語句,scanf的格式,庫函數的調用,for語句 | 不太理解預算符的運算法則 |
| 第四周 | 26 h | 178 | 定義與調用自定義函數 | 不清楚有些符號的作用 |
| 第五周 | 29h | 236 | 多分支結構、字符型數據類型和邏輯運算符 | 對省略else的結構不太理解 |
| 第六周 | 33h | 288 | 多分支結構switch語句 | break的使用以及switch語句中default的作用不太理解 |
3.2 累積代碼行和博客字數

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

3.3.2學習心得
1.學習了六周了,作業的代碼越來越復雜了,掌握的東西也越來越多了
2.新的一周,學會了switch的使用,發現以前的許多東西可以用不一樣的方法
3.C語言在於多實踐,今后會多刷題,也會多學習學習別人的代碼
