這個作業屬於哪個課程 | https://edu.cnblogs.com/campus/zswxy/CST2020-2 |
---|---|
這個作業要求在哪里 | https://edu.cnblogs.com/campus/zswxy/CST2020-2/homework/11635 |
這個作業的目標 | <第5章 函數 要求學生掌握各種類型函數的定義、調用和申明,熟悉變量的作用域、生存周期和存儲類型> |
學號 | <20208981> |
1.PTA實驗作業
1.1 統計各位數字之和是5的數
1.1.1數據處理
數據表達:定義了整型變量a,b,sum,count,i;a是每一位數,b是每位數的和,count是滿足條件的整數個數, sum是這些整數的和,i為循環變量
數據處理:使用了for循環語句,if分支語句
表達式:
a=number%10;
number=number/10;
b=b+a;
count++;
sum=sum+i;
1.1.2實驗代碼截圖
1.1.3 造測試數據
輸入 | 輸出 | 說明 |
---|---|---|
104 999 | 104 is counted. count = 15, sum = 3720 | 在[104,999]的范圍中,兩端中的104是各位數字之和是5的數,且有15個各位數字之和是5的數,這些整數的和為999 |
1 10000 | count = 56, sum = 77770 | 在[1,10000]的范圍中,有56個各位數字之和是5的數,這些整數的和為77770 |
14 23 | count = 2, sum = 37 | 在[14,23]的范圍中,兩端都是各位數字之和是5的數,且僅有這兩個各位數字之和是5的數,這些整數的和為37 |
1.1.4 PTA提交列表及說明
提交列表說明:
兩次錯誤為一處,函數is,最后沒有加上return 0;使得不滿足條件的數也返回了1.
1.2 解一元二次方程
1.2.1 數據處理
數據表達:定義了整型變量a,b,c,d,x,x1,x2;a是二次項的系數,b是一次項的系數,c是常數項,d為b2-4ac;x為唯一解,x1,x2,為兩個不同的根,定義了字符型變量op,用於求共軛虛根
數據處理:使用了if-else分支語句
表達式:
d=(b*b)-4*a*c;
x1=(-1*b+sqrt(d))/2*a;
x2=(-1*b-sqrt(d))/2*a;
d=-1*d;
x=sqrt(d)/(2*a);
x1=-1*b/(2*a);
1.2.2 實驗代碼截圖
1.2.3 造測試數據
輸入 | 輸出 | 說明 |
---|---|---|
0 4.5 -3.6 | x = 0.8 | 4.5a-3.6=0的解為x = 0.8 |
-2 0.8 -0.06 | x1 = 0.1, x2 = 0.3 | -2x2+0.8x-0.06=0的解為x1 = 0.1, x2 = 0.3 |
-0.2 0.04 -0.01 | x1 = 0.1-0.2i, x2 = 0.1+0.2i | -0.2x2+0.04x-0.01=0的解為x1 = 0.1-0.2i, x2 = 0.1+0.2i |
1.2.4 PTA提交列表及說明
提交列表說明:
1.部分正確:d的值在a != 0,且有兩個相同解時,d的值並不等於零,以為是運算符的結合性導致運算出錯,將d=(b*b)-4*a*c;改為d=(b*b)-(4*a*c);,結果同樣是部分錯誤
2.部分正確:經過多次確認,確定是數據的精度存在誤差導致,於是在a!=0,且有兩個不同解是添加了if語句將x1,x2兩個的值在相差小於0.0001時按有有兩個相同解處理
2.代碼互評
同學代碼1:
自己代碼:
1.is函數該同學比我少定義一個變量
2.該同學使用n變量作為count的值沒有做到見明知義
同學代碼2:
自己代碼:
1.該同學比我多定義兩個變量
2.該同學將變量運算集中布置於代碼前面,使代碼思路更清晰,更容易尋找錯誤
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的作用不太理解 |
第七周 | 36 h | 356 | while和do-while結構 | 容易弄錯while循環結束時條件是真還是假 |
第八周 | 36 h | 365 | break、continue的使用,循環的嵌套 | 容易弄錯循環判斷條件,形成死循環 |
第九周 | 37h | 367 | 掌握各種類型函數的定義、調用和申明,熟悉變量的作用域、生存周期和存儲類型 | 形參與實參的辨認 |
3.2 累積代碼行和博客字數
3.3 學習內容總結和感悟
3.3.1 學習內容總結
3.3.2 學習體會
1.這周老師上課講得基本都是理論知識,沒有講例題,所以對函數部分的知識的使用有些不明白
2.pta的作業越來越來難了,不明白為什么總會有超綱的內容出現
3.學期快要結束了,考試也十分臨近了,在考試前的這段時要好好計划下復習