注1:這篇文章主要參考了
1、我們先來看最簡單的for迴圈
int i; //i是變數
for(i=0;i<5;i++) //for(表示式 1;表示式 2;表示式 3)語句
//當for迴圈內只有一條語句的時候,可以省略{}
它的輸出結果是01234
它的執行過程如下:
(1)求表示式1
(2)求表示式2
若其值為真,則執行for迴圈{}內的語句語句中指定的內嵌語句,然後執行(3)做若為
若其值為假,則結束迴圈,轉到(5)
(3)求解表示式3
(4)返回(2)繼續執行
(5)結束迴圈,執行for語句以後的語句
在本例的for(i=0;i<5;i++) 中,
i=0;是為迴圈變數i賦初值
i<5;是迴圈執行的條件
i++;是迴圈變數的改變語句
2、在c語言的各種迴圈語句中,要數for最靈活了。無論是迴圈次數「已經確定」或「迴圈次數不確定,我們只知道迴圈結束條件」的情況,它都能處理。
for語句完全可以代替while語句.
剛剛的for迴圈可以改寫為:
i=0;
while(i<5)
顯然,用for語句更簡單、方便。
3、說明:
for(表示式 1;表示式 2;表示式 3)語句
(1)for語句的一般形式中的"表示式1"可以省略,此時應在for語句之前給迴圈變數賦初值.注意省略表示式1時,其後的分號不能省略.
比如,剛剛的for迴圈可以改寫為:
int i=0;
for(;i<5;i++)
(2)如果表示式2省略 即不判斷迴圈條件,迴圈無終止地迴圈下去,也就是認為表示式2始終為真.
例如:
for(i=0;;i++)
與i=0;
while(1)
等價;(3)表示式3也可以省略,但此時程式設計者應另外設法保證迴圈能正常結束.如:
for(i=0;i<5;)
這個例子的迴圈增量沒有放在表示式3的位置 而是作為迴圈體的一部分 其效果是一樣的.
(4)可以省略表示式1和表示式3,只有表示式2 即只給迴圈條件.
(5)三個表示式都可以省略,如:
for(;;)
printf("愛你!");
相當於while(1)
printf("愛你!");
即不設初值 不判斷條件(認為表示式2為真值)迴圈變數不增值,無終止的執行迴圈體.
(6)表示式1也可以是設定迴圈變數初值的賦值表示式,也可以是與迴圈變數無關的其他表示式.如:
(7)遇到多重迴圈怎麼辦?
可以試試列印這樣的**來看規律。
for(i=1;i<=4;i++)
printf("中間的for迴圈被執行了一次");
}
C語言複習 1
程式是人機互動的媒介,有輸出必然也有輸入。在c語言中,有多個函式可以從鍵盤獲得使用者輸入 scanf 和 printf 類似,scanf 可以輸入多種型別的資料。getchar getche getch 這三個函式都用於輸入單個字元。gets 獲取一行資料,並作為字串處理。scanf 是最靈活 最複...
C語言複習(1)
1.邏輯運算子的短路效應 邏輯運算子的短路效應 對於邏輯與 來說,同為真時才為真,所以當條件1為假時不需要計算條件2 對於邏輯或 來說,同為假時才為假,所以當條件1為真時不需要計算條件2 下面的運算形式為,先計算 a b 的結果,a為真,故再計算 b,結果也為真,所以表示式 a b 為真 對於 a ...
c 複習筆記1
1.using空間的使用 在using空間中的類不能顯示的新增private,protected等,c 方法預設訪問級別 private,c 類預設訪問級別 internal 2.using system using n1 等這樣的語句必須放在整個文件的最前面。3.命名空間就像乙個倉庫,using就...