1. 程式人生 > >迴圈語句學習總結

迴圈語句學習總結

迴圈語句學習總結
  在迴圈結構這一章中三種語句,分別是當型迴圈(先判斷條件再執行)for、while,直到型迴圈(先執行再判斷條件)do—while。for和while類似只是圓括號裡的內容不同,三種語句中當迴圈體由多個語句構成時,要用一對花括號括起來,程式風格也要縮排兩格。若迴圈次數已知,計數控制迴圈for;迴圈次數未知,條件控制迴圈while;迴圈體至少執行一次do—while。
格式為:

for(控制變數初始化表示式;條件表示式;增量表達式)
{
       語句1;
       語句2;
       ……;
}
while(條件表示式)
{
       語句1;
       ……;
}
do
{
       語句1;
       ……;
}while(條件表示式);

:1、for語句和while語句圓括號後不能加“;”,應為“;”意味結束。
  2、for圓括號內的3個部分可以省略,但“;”不能,例for(;;)為死迴圈。for(int i=1;;)此方式宣告變數只在for迴圈中有效,離開變數就無效。
  3、while圓括號可以包含多個語句用逗號隔開,但只讀最後一個語句,如:while(x>10,x>11,x<10)只有當x<10時才執行迴圈。
  4、迴圈中可以使用 continue:直接進行下一次迴圈。break:直接跳出迴圈。
  5、強制結束輸入F6或者ctrl+z
回車。
  6、外迴圈執行一次,內迴圈從頭到尾執行執行完畢。
  學習了迴圈語句可以幫助我解決好多複雜的問題,累加、累乘、求最大公約數、最小公倍數、數字反轉、畫矩形、有幾位數字或者幾個確定數字問題、求平均值、儲蓄計劃等問題。還有許多解決問題的方法:暴力法又稱窮舉法(所有組合情況全部列舉)、輾轉相除法,從韓信點兵問題中見到中國剩餘定理(CRT),bool變數僅佔一位要麼真要麼假,這一章中有一個好玩的遊戲—猜數遊戲,包括的知識點有隨機函式rand(),rand()%b將隨機數範圍規定在[0,b-1],例如rand()%100+1範圍為[1,100];srand()設定隨機數種子;time()函式返回以秒計算的日曆時間,即從一個標準時間點到當前時刻經過的相對時間(單位為秒)。利用此函式需要標頭檔案C中為<time.h>。
幾個經典問題中需要注意的事項:
累加:sum=0;//賦初值必須在迴圈前。


for(i=1;i<=n;i++)sum=sum+i;//迴圈變數可以充當一般變數使用,當這樣時,變化情況唯一。
求最大公約數:輾轉相除法
r=m%n;
迴圈m=n;n=r;r=m%n;
當r==0時,n為最大公約數。
求最小公倍數:兩數相乘除以最大公約數m*n/r。
  通過學習這一章,我在C語言的知識面又有了新的擴充套件,學到了非常有用的迴圈結構,感覺C語言越來越奇妙,對它的興趣更加濃厚,但有些題的思路不明確,以後要多加聯絡,多下功夫,多看程式碼,遇題先有大局觀再入手細節,腳踏實地,努力學會並學好這門語言,為以後掌握其他語言打下堅實基礎。