一、迴圈控制結構與迴圈語句
簡介:使乙個算數運算按意願進行。
迴圈結構:
(1)當型迴圈結構,表示當條件p成立時,反覆執行a操作,直到條件p不成立時結束迴圈。
(2)直到型迴圈結構,表示先執行a操作,再判斷條件p是否成立。若為真,則反覆執行a操作,直到條件p不成立時結束迴圈。
迴圈語句型別:(1)while語句;(2)do-while語句;(3)for語句。
(1)while語句:
while(條件)
(2)do-while語句:
dowhile(條件);
(3)for語句:
for(初始化表示式;條件;增值表示式)
注意:對於(1)(2)兩種語句來說,(2)語句先執行迴圈體後再計算並判定迴圈控制條件為真還是為假。所以迴圈體內的語句將至少被執行一次;for語句中三個表示式之間的分隔符是分號,有且僅有兩個分號,既不能多也不能少。
經典案列:程式設計從鍵盤輸入n,然後計算並輸出1+2+3加到n的值。
#include
#include
using namespace std;
int main()
cout<二、計數控制的迴圈
定義:迴圈次數已知的迴圈成為計數控制的迴圈。習慣上,用for語句編寫。
例題:編寫乙個程式,從鍵盤輸入n,計算並輸出n!
#include
#include
using namespace std;
int main()
cout<三、條件控制迴圈
定義:迴圈次數由條件控制。
知識點:
(1)隨機函式rand()生成[0-32764]之間的整數(在標頭檔案中)。
1、利用求餘運算rand()%b生成隨機數在[0~b-1]之間。
2、利用rand()%b+a生成隨機數在[a~b-1+a]之間。
(2)利用函式srand()為函式rand()設定隨機數種子。
**:int magic;
unsigned int seed;
cin>>seed;
srand(seed);
magic=rand()%100;
(3)也可利用函式time()來自動生成種子(在標頭檔案中)。
**:int magic;
srand(time(null));
magic=rand()%100;
(4)檢測程式正確性。
**:int ret;
ret=scanf("%d",&n);
while(ret!=1)
四、流程的轉移控制
(1)goto語句。(無條件跳轉)
(2)break語句。用於迴圈結構中時直接跳到迴圈結構中的第一條語句繼續執行。
(3)continue語句。用於迴圈結構中程式將會跳過continue後面的語句,而開始下一次迴圈。既結束本次迴圈的進行。
注意:在巢狀迴圈的情況下,break語句與continue語句只對包含他們的最內層迴圈語句起作用,不能用break語句跳出多重迴圈。
知識點:
(1)while(x)=while(x!=0);
(2)while(!x)=while(x==0);
五、個人感悟與收穫
1、做了這麼多open judge題,題目越來越難,對個人的邏輯思維能力要求也越來越高。有時候做不出來題,不如放一放。說不定某一瞬間就會靈感一現,適度放鬆一下大腦是做題成功的催化劑。
2、for語句的使用非常多,這個語句比較簡單,適用的情況很多。但也不能完全使用for語句,合理使用三個語句是解題成功的關鍵。
3、對於goto語句盡量少使用。在修正錯誤的過程中,多使用輸出語句,把每一步的運算結果都展現出來,有利於發現錯誤並改正。
迴圈控制結構的學習總結
一 知識點總結 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 迴圈...
迴圈控制結構總結
迴圈控制結構 1 重複處理次數已知 計數控制的迴圈 重複次數未知且由給定條件控制 條件控制的迴圈。2 結構化程式設計的三種基本結構包括 順序結構 選擇結構 迴圈結構。其中,迴圈結構包括 當型迴圈結構 for和while 直到型迴圈結構 do while 注意 當型迴圈是先判斷後迴圈,直到型迴圈是先迴...