1. 程式人生 > >C語言第02次作業--循環結構

C語言第02次作業--循環結構

http %d 總數 測試 編譯 ++ 說明 整數 一個

1.本章學習總結

1.1思維導圖

技術分享圖片

1.2本章學習體會及代碼量學習體會

1.2.1學習體會

1- 經過這兩周的學習,我深切地體會C語言非常的難(對於我而言)。大部分情況都是題目不理解和沒有思路,或者編譯不正確和格式出錯誤。
2- for是先判斷後執行,while也是先判斷後循環,do while是先循環後判斷;for適用於循環次數已知的情況,while適合循環次數未知的情況,do while也是適用於循環次數未知的情況。
3- 除了學習單層循環還學習了嵌套循環,具體不是很清楚。
4- break和continue語句,一個結束循環,一個跳過後面語句繼續循環。
5- 學習偽代碼,他是讀者的思路,有語言描述和C的語法描述。

1.2.2代碼累計

技術分享圖片

2. PTA總分

2.1 截圖PTA中循環結構2次題目集的排名得分

技術分享圖片
技術分享圖片

2.2 我的總分:

技術分享圖片

3. PTA實驗作業

3.1 PTA題目1

C練習--循環結構(單層)(20分)
7-4特殊a串數列求和
給定兩個均不超過9的正整數a和n,要求編寫程序求a+aa+aaa++?+aa?a(n個a)之和。

3.1.1算法分析

定義變量 i,l, n,s,s1為整點型int。讓 s1=0, s=0;
輸入 &l, &n;
由 for實現(i=1; i<=n; i++)循環
用pow函數表示s1+=pow(10,i-1)*l;
###3.1.2代碼截圖
技術分享圖片

3.1.3測試數據

技術分享圖片

3.1.4PTA提交列表及說明

技術分享圖片
說明:出很多次錯誤。有格式錯誤,編譯錯誤和運行超時。最終才答案正確,但是腦袋裏顯現的還是why。

3.2PTA題目2

C練習--循環結構(單層)
7-2 求冪級數展開的部分和 (20 分)
已知函數e
?x
??可以展開為冪級數1+x+x
?2
??/2!+x
?3
??/3!+?+x
?k
??/k!+?。現給定一個實數x,要求利用此冪級數部分和求e
?x
??的近似值,求和一直繼續到最後一項的絕對值小於0.00001。

3.2.1算法分析

用double定義x,sum,sum_1並使isum=1,sum_1=1;;
用int定義 item,i和k並賦 k=1, item=11;
double sum=1,sum_1=1;
輸入浮點型("%lf",&x);
由while實現循環:(fabs(item)>0.00001);
由for實現循環:(i=1;i<=k;i++);
用pow函數實現item=pow(x,k)/sum_1;

3.2.2代碼截圖

技術分享圖片

3.2.3測試數據

技術分享圖片

3.2.4PTA提交列表及說明

技術分享圖片
說明:出很多次錯誤。有格式錯誤,編譯錯誤。最終才答案正確,但是腦袋裏顯現的還是why。

3.3PTA題目3

2018-c-循環的嵌套
7-4 換硬幣 (20 分)
將一筆零錢換成5分、2分和1分的硬幣,要求每種硬幣至少有一枚,有幾種不同的換法?

3.3.1算法分析

用 int定義變量 c5,c2=0,c1,cnt。並賦0為初值。其中c為硬幣,cnt為換法總數
用 int定義變量x並 x=13,x為零錢
輸入("%d",&x)
由for函數實現(c5=x/5;c5>0;c5--)
(c2=x/2;c2>0;c2--)
(c1=x;c1>0;c1--)循環
利用數學函數實現(c55+c22+c1==x)
輸出("fen5:%d, fen2:%d, fen1:%d, total:%d\n",c5,c2,c1,c5+c2+c1);cnt++;
###3.3.2代碼截圖
技術分享圖片

3.3.3測試數據

技術分享圖片

3.3.4PTA提交列表及說明

技術分享圖片
說明:出很多次錯誤。有格式錯誤,編譯錯誤。問來問去,在網上查看,最終才答案正確,但是腦袋裏顯現的還是why。

4. 代碼互評

4.1 代碼截圖

同學的:1代碼
技術分享圖片
我的:2代碼
技術分享圖片

4.2 兩者的不同

1-1代碼非常簡單,使用for函數實現循環;
2-2代碼有一定的註釋,也是用for函數實現循環;
3-2代碼相對1代碼來說更復雜一點。

C語言第02次作業--循環結構