1. 程式人生 > >循環—函數—數組

循環—函數—數組

考試總結 喜歡 設置 忽略 結果 url 思路 src 方法

題目1.7-7.計算階層和

1.本題PTA提交列表

技術分享圖片

2.設計思路

技術分享圖片

輸入n,利用循環求出1到n的階層並將其求和

3.本題調試過程中遇到問題

技術分享圖片

本題只需要一個循環。

4.代碼截圖

技術分享圖片

題目2.7-5找出最小值

1.本題PTA提交列表

技術分享圖片

2.設計思路

輸入n個數,假設第一個數為最小值,利用循環將剩下的數依次與第一個比較,如果結果更小則替換最小值。

技術分享圖片

3.本題調試過程中遇到問題及PTA提交列表情況說明

技術分享圖片

最小值為0的答案錯誤,是因為定義了兩個變量x和y,而y從1開始循環滿足不小最小值為0的情況。

4.代碼截圖

技術分享圖片

題目3.7-17尋找250

1.本題PTA提交情況

技術分享圖片

2.設計思路

利用循環輸入n個數,每輸入一個數計數加一,直到這個數等於250,跳出循環,輸出此時的計數。

技術分享圖片

3.本題提交過程中遇到問題及PTA提交列表情況說明

技術分享圖片

4.代碼截圖

技術分享圖片

二.同學代碼結對互評

1.互評同學名字

林萍

2.我的代碼,同學的代碼截圖

技術分享圖片

技術分享圖片

3.我和同學代碼不同在哪裏?有哪些各自優勢?你更喜歡哪種代碼風格?如果同學代碼有錯的也請幫忙指出來哪裏出問題。

(1).我的代碼沒有設置中間值計算a的變化,同學的設置了

(2)我的比較簡潔,同學的細節體現的更加清楚,更能體現整個的思路。

(3).我更喜歡我的代碼。

三、截圖本周題目集的PTA最後排名

技術分享圖片

四、本周學習總結(2分)
1.你學會了什麽?

學會了用循環來輸入,輸出,以及判定,使代碼能夠更加簡潔。
2.本周的內容,你還不會什麽?

多重循環還不能很好的掌握,容易使條件出錯而使答案錯誤。

3.循環結構考試總結

1.哪題做錯了,怎麽改?

13.以下程序的輸出結果是

#include<stdio.h>

int main(){

int i=0,sum=0;

for( ; ;){

if(i==3||i==5) continue;

if(i==6) break;

i++;

sum+=i;

}

i=0時進入循環,不滿足兩個if條件,i變為1,sum變為1;再次進入循環,不滿足兩個if條件,i變為2,sum變為3;再次進入循環,不滿足兩個if條件,i變為3,sum變為6;再次進入循環,滿足第一個if條件,執行continue語句,不再執行下面的語句,從此i恒等於3,進入死循環。

2.考試結果滿意麽,怎麽改進?

不是很滿意,審題要認真,做過的題目不能錯。

3.其他總結。

要多打代碼,多讀代碼,光是看是不夠的,打代碼最重要的是日積月累。

函數

一.PTA實驗作業

題目1.7-8求n以內最大的k個素數以及它們的和

1.本題PTA提交列表

技術分享圖片

2.設計思路

輸入兩個數n和k,利用循環從n依次減1判斷是否為素數,當是的時候總和加上此素數,當素數的個數超過k個時,退出循環。

技術分享圖片

3.代碼截圖

技術分享圖片

4.本題調試過程碰到問題及PTA提交列表情況說明

技術分享圖片

當x滿足條件時要輸入continue語句,當x達到k個時,要使用break語句退出循環,否則答案不正確。

題目2.7.1求組合數

1.本題PTA提交列表

技術分享圖片

2.設計思路

輸入m和n,分別計算m的階層,n的階層以及n-m的階層,利用公式求出答案。

技術分享圖片

3.代碼截圖

技術分享圖片

4.本題調試過程碰到問題及PTA提交列表情況說明

技術分享圖片

沒有註意到格式,漏了空格。

題目3.7-4驗證哥德巴赫猜想

1.本題PTA提交列表

技術分享圖片

2.設計思路

輸入一個n,利用循環和素數的判定求出小於n的兩個素數使兩數之和等於n,並滿足為最小解。

技術分享圖片

3.代碼截圖

技術分享圖片

4.本題調試過程碰到問題及PTA提交列表情況說明

技術分享圖片

二.截至本周日集的PTA最後排名.技術分享圖片

三.同學代碼結對互評

1.互評同學名稱

朱淳淳

2.我的代碼,互評同學代碼截圖

技術分享圖片

技術分享圖片

3.我和同學代碼不同在哪裏?有哪些各自優勢?你更喜歡哪種代碼風格?如果同學代碼有錯的也請幫忙指出來哪裏有問題

(1).同學的用了函數,我的沒有用

(2).同學的用了函數後更加簡潔明了,我的更簡單易懂

(3).我更喜歡同學的,用了函數

四.本周學習總結

1.你學會了什麽

如何寫代碼判斷素數

2.本周的內容,你還不會什麽

對於函數還不能很熟練的使用

數組

一、PTA實驗作業

題目1:求最大值及下標
1. 本題PTA提交列表

技術分享圖片


2. 設計思路
利用數組定義n個數並利用循環輸入,假設第一個數為最大值,再次利用循環將其後面的數與之比較,如果結果更大,則替換此最大值的值以及對應的下標。

技術分享圖片


3.本題調試過程碰到問題及PTA提交列表情況說明技術分享圖片

出現段錯誤的原因是定義數組時忽略了[]內不能是一個未知數,而應該使用一個足夠大的數字。

4.代碼截圖

技術分享圖片

題目2:

1. 本題PTA提交列表

技術分享圖片


2. 設計思路

利用數組定義n個數並利用循環輸入,再利用循環把n個數的下標倒序排放,從而倒著輸出這n個數。

技術分享圖片


3.本題調試過程碰到問題及PTA提交列表情況說明。

技術分享圖片

出現多種錯誤的原因是一開始采用了%d 的方法輸出結果,忽略了題目所要求的行末不能有空格。所以應該使用if語句條件控制空格的數量。

4.代碼截圖

技術分享圖片

題目3.7-14簡化的插入排序

1. 本題PTA提交列表

技術分享圖片

2. 設計思路

利用數組定義n個數並利用循環輸入,再輸入一個x,將x 賦值給數組裏的第n+1個數,然後利用排序法將其按照從小到大的順序輸出。

技術分享圖片


3.本題調試過程碰到問題及PTA提交列表情況說明。
技術分享圖片

4.代碼截圖

技術分享圖片

二、同學代碼結對互評

1.互評同學名字

林萍

2.我的代碼,同學的代碼截圖

技術分享圖片

技術分享圖片

3.我和同學代碼不同在哪裏?有哪些各自優勢?你更喜歡哪種代碼風格?如果同學代碼有錯的也請幫忙指出來哪裏出問題。

(1).我的代碼是通過設立一個flag=1通過flag的值來判斷,利用循環及if條件,如果上半部分數字全為0則flag的值不變,如果循環結束後flag的值仍不變,則為上三角矩陣。同學的代碼是通過設立兩個值分別代表上半部分所有數字以及為零的數量,如果相等則為上三角矩陣。

(2).我的代碼使用了flag,很多代碼都可以借用它判斷,同學代碼比較直白。

(3).我更喜歡我的代碼,以後復雜的問題也能更好解決

三、截圖本周題目集的PTA最後排名。

技術分享圖片

四、本周學習總結
1.你學會了什麽?

學會了用數組輸入輸出多個數字

學會了用設立一個flag的值是0還是1來判斷是否滿足條件。
2.本周的內容,你還不會什麽?

還不能很好的使用二維數組來簡化代碼。

循環—函數—數組