先看程序:
#include <stdio.h>int main(){ for(int i = 0; i < 5; i++) { printf("i = %d/n", i); } printf("Loop ended!/n"); return 0;}
運行結果:
i = 0i = 1i = 2i = 3i = 4Loop ended!
for循環的語句結構為:
for(表達式1; 表達式2; 表達式3)
{
語句;
}
其執行順序為:
(1)執行表達式1
(2)執行表達式2。表達式2是一個判斷語句;若為真,則執行{}中的語句。若為假,則結束for循環
(3)若表達2為真,執行表達式3
(4)執行表達式2
(5)不斷重復步驟(3)和步驟(4),直到表達式2為假,結束循環。
流程圖如下所示:
程序執行過程:
第一次,表達式1中i的值為0;表達式2中0<5是成立的,打印出i的值。
第二次,表達式3中i++后i變為1;表達式2中1<5是成立的,打印出i的值。
第三次,表達式3中i++后值變為2,表達式2中2<5是成立的,打印出i的值。
第四次,表達式3中i++后值變為3,表達式2中3<5是成立的,打印出i的值。
第五次,表達式3中i++后值變為4,表達式2中4<5是成立的,打印出i的值。
第六次,表達式3中i++后值變為5,表達式2中5<5是不成立的,不執行大括號中的打印語句。循環結束,跳出循環。程序繼續往下執行。
作業:
(1)使用斷點觀察上面程序的每一步的執行過程
(2)根據上面的分析,思考下面的程序的運行結果并動手操作一遍
#include <stdio.h>int main(){ for(int i = 0; i < 0; i++) { printf("i = %d/n", i); } printf("Loop ended!/n"); return 0;}
新聞熱點
疑難解答