在c語言裡面,迴圈語句有好多種,比如for語句,do...while,while。在我們的日常使用中,for語句是使用的最多的。而在for語句中,最應該注意的就是取值的問題。
1.for(a=1;a<9;a++)
這只有乙個for,比較好理解。a=1,小於9,然後執行下面的迴圈體,執行完迴圈體之後再執行a++,注意是執行完迴圈體之後再執行a++。這樣迴圈,直到a=9,跳出迴圈。
2.下面說一下for迴圈的巢狀,在這裡面取值的問題。這裡拿九九乘法表來舉例:
#include
int main()
int i,j;
for(i=1;i<=9;i++)
for(j=1;j<=i;j++)
printf("%d*%d=%d ",i,j,i*j);
printf("\n");
return 0;
第乙個for,i=1,小於等於9,進入下乙個for迴圈j=1,小於等於i=1,然後執行printf語句,列印出乘法。直到j<=i不符合時,執行第乙個for裡面的i++。
然後i=2,小於等於9,進入巢狀的for語句,此時應注意,進入巢狀的for語句之前,j的值為2,進入巢狀的for語句之後,因為有j=1,所以j重新賦值,j又等於1.一直迴圈,直到j=3,不符合j<=i=2,跳出巢狀的for語句,然後在執行第乙個for語句的i++。後面的迴圈就不在贅述了。應當注意的是,每次開始執行巢狀的for語句時,j都是1,然後迴圈。
3.關於for語句的使用,還應當注意的是大括號的使用。例如:
int i,j,sum=0;
for(i=0;i<101;i++)
sum=sum+i;
printf(「%5d」,sum);
在輸出之後,你會得到101個數字,但是如果你沒有用大括號把for迴圈裡的兩個語句括起來的話,最後列印出來的只有5050這乙個數字,因為for語句的迴圈只執行到了「sum=sum+i」這個語句,沒有執行printf語句。總的來說,不加大括號的話,for語句的迴圈只會迴圈跟在for語句後面的那乙個語句。關於大括號的使用,在if語句裡也是類似的道理。
4.關於for語句分號的使用。for後面的括號裡有三個表示式,但for語句的特點是,這三個表示式你都可以省略,但這沒啥意義。
但是,當你省略第乙個表示式時,分號不能丟,如:
i=1;
for(;i<10;i++)
這樣寫才是合法的。總之,括號裡的表示式可以省,但分號不能省,如:
i=1;
for(;;)
printf(「%d」,i);
這樣是合法的,但是這沒啥意義。
然後是for後面的括號的末尾不能加分號。
C語言之迴圈語句
1.迴圈語句分析 迴圈語句的基本工作方式 通過條件表示式判定是否執行迴圈體 條件表示式遵循if語句表示式的原則 do,while,for的區別 do語句先執行後判斷,迴圈體至少執行一次 while語句先判斷後執行,迴圈體可能不執行 for語句先判斷後執行,相比while更簡潔 do.while語句的...
C語言之迴圈(while)
while的形式如下 如圖,當expression為真是就會一直執行while裡的執行語句,直到expression為假。注 當while內的語句超過1句時必須使用 否則編譯器就會只認為第一句是while語句內的命令。while的continue語句將會使while中斷此次迴圈,進而執行下次迴圈。例...
C語言之迴圈鍊錶
一 迴圈鍊錶 迴圈鍊錶是與單鏈表一樣,是一種鏈式的儲存結構,所不同的是,迴圈鍊錶的最後乙個結點的指標是指向該迴圈鍊錶的第乙個結點或者表頭結點,從而構成乙個環形的鏈。迴圈鍊錶的運算與單鏈表的運算基本一致。所不同的有以下幾點 1 在建立乙個迴圈鍊錶時,必須使其最後乙個結點的指標指向表頭結點,而不是象單鏈...