迴圈控制結構總結

2021-09-02 20:19:48 字數 2202 閱讀 8266

迴圈控制結構

1、重複處理次數已知:計數控制的迴圈;

重複次數未知且由給定條件控制:條件控制的迴圈。

2、結構化程式設計的三種基本結構包括:順序結構、選擇結構、迴圈結構。

其中,迴圈結構包括:當型迴圈結構(for和while)、直到型迴圈結構(do-while)。(注意:當型迴圈是先判斷後迴圈,直到型迴圈是先迴圈再判斷且至少執行一次)

3、三種語句

①while語句。

while(迴圈控制表示式)

{語句序列

}②do-whlie語句。do{

語句序列

}while(迴圈控制表示式)

③for語句。(使用頻率最高!)

for(初始化表示式;迴圈控制表示式;增值表示式)

{語句序列

}(注意:for語句可以與while語句等價實現;for語句中三個表示式之間的分隔符號是分號,有且僅有兩個分號!)

4、逗號運算子

主要用在for語句中需要同時為多個變數賦初值等情況。e.g.for(i=1,j=n;i<=j;i++,j–)

5、空語句

僅有乙個分號構成的語句。空語句什麼也不做,只表示語句的存在。當迴圈體中是空語句時,表示迴圈體中什麼也不做,常用於編寫延時程式。

for(i=1;i<=n;i++); 行末的分號將導致迴圈什麼也不做,只起延時作用。

while(i<=n); 行末分號有可能導致死迴圈

6、計數控制迴圈

階乘問題

#include

main()

printf("%d!=%1d\n",n,p);

}7、巢狀迴圈

巢狀迴圈就是在迴圈語句中再套上一些迴圈。

例題:#include

main()

sum = sum +p;

}printf(「1!+2!+…+%d=%ld!\n」,n,sum);

}巢狀迴圈主要是在於思考上面不是很好去理解它,它迴圈很多,每個迴圈代表的意思是不一樣的,思考起來有點繞,不是很好理解。

8、條件控制迴圈

猜數遊戲:

(1)改變隨機數的取值範圍

①利用求餘運算rand()%b將隨機數變化到[0,b-1]之間。

②利用rand()%b+a將隨機數的取值範圍平移到 [a,a+b-1]之間。(x=rand()%100+1產生乙個1到100之間的隨機數)

(2)srand()函式

srand和rand()配合使用產生偽隨機數序列。rand函式在產生隨機數前,需要系統提供的生成偽隨機數序列的種子,rand根據這個種子的值產生一系列隨機數。如果系統提供的種子沒有變化,每次呼叫rand函式生成的偽隨機數序列都是一樣的。srand(unsigned seed)通過引數seed改變系統提供的種子值,從而可以使得每次呼叫rand函式生成的偽隨機數序列不同,從而實現真正意義上的「隨機」。通常可以利用系統時間來改變系統的種子值,即srand(time(null)),可以為rand函式提供不同的種子值,進而產生不同的隨機數序列

(3)例題

#include /用到了srand 函式,所以要有這個 標頭檔案/

#include

#definemax 10

int main(void)

;int i;

unsigned int seed;

scanf("%d",&seed);/手動輸入種子/

srand(seed);

for(i = 0; i產生100以內的隨機整數/

printf("%d", number[i]);

}printf("\n");

return 0;

}9、流程的轉移控制

①goto語句(慎用!)

②break語句

③continue語句

10、窮舉法程式設計例項

韓信點兵問題

find

心得體會:

學了迴圈之後我覺得困擾最大的是巢狀迴圈。它迴圈很多,每個迴圈代表的意思是不一樣的,思考起來有點繞,不是很好理解,學到這裡的時候,我感覺自己學起來就有點吃力了,我也不知道這是原因導致的,可能是我沒有基礎。也可能是對於這些自己沒有理解清楚。老師上課的時候我感覺還好,老師講著講著還能理解,到了自己動手的時候就有點無從下手的感覺。俗話說,熟能生巧,在做過一定量的openjudge後感覺自己有點開竅的感覺。做題和自己動手是完全有必要的。

學到了很多解決問題的方法,例如窮舉法,暴力法等等。這都是解決問題的好方法,但是要想熟練作用還是需要自己多去動手,多去思考。

迴圈控制結構的學習總結

一 知識點總結 1 迴圈控制結構有兩種型別 當型迴圈與直到型迴圈 2 迴圈結構由for while do while三種迴圈語句來實現 3 for語句使用頻率最高,一般形式為 初始化表示式 迴圈控制表示式 增值表示式 4 for迴圈的三個表示式均可省略,但是裡面的兩個分號必須存在 5 while語句...

迴圈控制結構學習總結

本章我們學習了用於實現迴圈控制的三種語句,即for語句 while語句 和do while語句,也學習了逗號運算子,還學習了用於流程控制的break語句 continue語句和go to語句。while語句 while 迴圈控制表示式 語句序列 do while語句 do 語句序列 while 迴圈...

迴圈控制結構

最近我們的c語言課程剛剛結束對迴圈控制結構的學習。在此對c語言中迴圈控制結構的知識點進行總結,並發表看法。迴圈結構主要分為兩種 當型迴圈結構和直到型迴圈。當型迴圈是根據條件決定是否執行迴圈,直到型迴圈是先迴圈再判斷,即至少迴圈一次。c語言中主要是通過for while do while三中迴圈語句來...