這個作業屬於那個課程 | C語言程序設計II |
---|---|
這個作業要求在哪里 | https://edu.cnblogs.com/campus/zswxy/CST2020-2/homework/11557 |
我在這個課程的目標是 | 能更好的學習C語言,以及學習相關專業知識 |
這個作業在那個具體方面幫助我實現目標 | PTA練習題以及嚴格的作業要求 |
參考文獻 | C Primer Plus(第6版中文版) |
學號 | 20208986 |
1.PTA實驗作業(20分/題)
1.1 計算天數
題目描述:
本題要求編寫程序計算某年某月某日是該年中的第幾天。
1.1.1數據處理
數據表達:定義了整型變量y,m,d,a,其中y,m,d是用戶通過輸入得到的,而a是通過賦值后輸出得到的。
數據處理:用到了if-else語句和switch語句,表達式如下:a=d;a=31+d;a=60+d;a=91+d;a=121+d;a=152+d;a=182+d;a=213+d;a=244+d;a=274+d;a=305+d;a=335+d;y%4==0&&y%100!=0||y%400==0;m<=2;
1.1.2實驗代碼截圖
1.1.3 造測試數據
輸入數據 | 輸出數據 | 說明 |
---|---|---|
2000/03/02 | 62 | 閏年 |
2009/03/01 | 61 | 平年 |
2020/11/27 | 332 | 閏年 |
2001/09/11 | 254 | 平年 |
1.1.4 PTA提交列表及說明
提交列表說明:
部分正確:y%4==0&&y%100!=0打成了y%4==0&&y%10!=0從而忽略了普通閏年跨二月的輸出,改正后無誤。
1.2 多分支表達-倍數問題
題目描述:
鍵盤輸入1個正的整數A,如果A是3的倍數但不是5的倍數,則輸出A除以5的余數。如果A是5的倍數但是不是3的倍數,則輸出A除以3的余數。如果A既不是5的倍數但也不是3的倍數,輸出A除以15的余數
1.2.1 數據處理
數據表達:定義了整型變量A,x,其中A是通過用戶輸入得到,x是是被賦值后的輸出。
數據處理:用到了if-else分支結構。表達式:A<=0;A%3==0&&A%5!=0;x=A%5;A%5==0&&A%3!=0;x=A%3;A%3!=0&&A%5!=0;x=A%15;
1.2.2 實驗代碼截圖
1.2.3 造測試數據
輸入數據 | 輸出數據 | 說明 |
---|---|---|
-1 | 無 | 不是正整數 |
9 | 4 | 是3的倍數但不是5的倍數 |
10 | 1 | 是5的倍數但不是3的倍數 |
22 | 7 | 既不是5的倍數但也不是3的倍數 |
1.2.4 PTA提交列表及說明
提交列表說明:
部分正確:忽略了15的倍數的輸出,在其后打上printf("%d",x);后答案正確。
2.代碼互評(5分)
同學代碼截圖1
同學代碼截圖2
自己代碼截圖
1.他們分別用的是if-else語句和數組,而我用的是switch語句。
2.用數組的只定義了一個數組,使代碼簡潔易懂。
3.同學用if-else用的很流暢,使其復雜度與switch差不多。
3.學習總結(15分)
3.1 學習進度條(5分)
周/日期 | 所花時間 | 代碼行數 | 所學知識點 | 目前迷惑點 |
---|---|---|---|---|
1/10.19-10.25 | 10h | 232 | 數學函數的的調用 | 有些調用函數不認識 |
2/10.26-11.1 | 10h | 269 | if-else語句 | 無 |
3/11.2-11.7 | 10h | 337 | for語句 | 無 |
4/11.8-11.13 | 12h | 370 | 自定義函數 | 函數的聲明 |
5/11.14-11.20 | 15h | 430 | 分支結構的深入 | 無 |
6/11.21-11.27 | 16h | 440 | switch語句 | 無 |
3.2 累積代碼行和博客字數(5分)
3.3 學習內容總結和感悟(5分)
3.3.1 學習內容總結
3.3.2 學習體會
1.經過一定時間的努力,我們學到的東西越來越多,花費的時間也越來越長,后面將要學習的東西越來越難,我們一定要適應這種趨勢,並調節自己的心態和壓力。
2.不要只停留在老師所講的東西,一定要自己去拓展知識,把老師所講的知識自己弄得更加深入。
3.不能單單只刷題,更多是要去歸納總結,並且圍繞不知道的知識點去學習。
4.在遇到不知道的知識點的時候,要查閱相關資料或者請教優秀的人。