1203 4 迴圈語句 之 for

2022-08-19 04:21:12 字數 2103 閱讀 8573

for迴圈的一般形式為:

for(表示式1; 表示式2; 表示式3)

它的執行過程如下:

1) 先求解表示式1。

2) 求解表示式2,若其值為真(非0),則執行迴圈體,否則結束迴圈。

3) 執行完迴圈體,再求解表示式3。

4) 重複執行步驟 2) 和 3),直到迴圈結束。

注意:表示式1僅在第一次迴圈時求解,以後都不會再執行,可以認為這是乙個初始化語句。

for迴圈的執行過程可用下圖表示:

用for迴圈來計算1加到100的值:

#include int main()

printf("%d\n",sum);

return 0;

}

執行結果:

5050

**分析:

1) 執行到 for 語句時,先給 i 賦初值1,判斷 i<=100 是否成立;因為此時 i=1,i<=100 成立,所以執行迴圈體。迴圈體執行結束後(sum的值為1),再計算 i++。

2) 第二次迴圈時,i 的值為2,i<=100 成立,繼續執行迴圈體。迴圈體執行結束後(sum的值為3),再計算 i++。

3) 重複執行步驟 2),直到第101次迴圈,因為此時 i 的值為101,i<=100 不成立,所以結束迴圈。

整個for語句相當於:

i=1;

while(i<=100)

由此我們可以總結出for迴圈的一般形式:

for(迴圈變數賦初值; 迴圈條件; 迴圈變數增量)

迴圈變數賦初值總是乙個賦值語句,它用來給迴圈控制變數賦初值;迴圈條件是乙個關係表示式,它決定什麼時候退出迴圈;迴圈變數增量,定義迴圈控制變數每迴圈一次後按什麼方式變化。這三個部分之間用分號;分開。

1) for迴圈中的「表示式1(迴圈變數賦初值)」、「表示式2(迴圈條件)」和「表示式3(迴圈變數增量)」都是選擇項,即可以預設,但分號(;)不能預設。

2) 省略了「表示式1(迴圈變數賦初值)」,表示不對迴圈控制變數賦初值。

3) 省略了「表示式2(迴圈條件)」,如果不做其它處理就會成為死迴圈。例如:

for(i=1; ; i++) sum=sum+i;
相當於:

i=1;

while(1)

所謂死迴圈,就是迴圈條件永遠為真,迴圈會一直進行下去,永不結束。死迴圈對程式的危害很大,一定要避免。
4) 省略了「表示式3(迴圈變數增量)」,則不對迴圈控制變數進行操作,這時可在語句體中加入修改迴圈控制變數的語句。例如:

for( i=1; i<=100; )
5) 省略了「表示式1(迴圈變數賦初值)」和「表示式3(迴圈變數增量)」。例如:

for( ; i<=100 ; )
相當於:

while(i<=100)
6) 3個表示式都可以省略。例如:

for( ; ; )  語句

相當於:

while(1)  語句

7) 表示式1可以是設定迴圈變數的初值的賦值表示式,也可以是其他表示式。例如:

for( sum=0; i<=100; i++ )  sum=sum+i;
8) 表示式1和表示式3可以是乙個簡單表示式也可以是逗號表示式。

for( sum=0,i=1; i<=100; i++ )  sum=sum+i;
或:

for( i=0,j=100; i<=100; i++,j-- )  k=i+j;
9) 表示式2一般是關係表示式或邏輯表示式,但也可是數值表示式或字元表示式,只要其值非零,就執行迴圈體。例如:

for( i=0; (c=getchar())!='\n'; i+=c );
又如:

for( ; (c=getchar())!='\n' ; )

printf("%c",c);

for迴圈也可以巢狀使用,例如:

#include

int main()

Python之if語句,迴圈語句

pythin縮排規則 具有相同縮排的 被視為 塊。s 5 if s 63 print s print t print k 上面第3 4行為乙個 塊,第五行與3 4行不是乙個 塊 若if條件成立,執行3 4句,結束之後執行第5句 否則直接執行第5句。縮排請嚴格按照python的習慣寫法 4個空格 不要...

Matlab之for迴圈語句

for迴圈允許一組命令以固定的和預定的次數重複。for迴圈的一般形式是 for 變數 矩陣 表示式 end在for和end語句之間的表示式按陣列中的每一列執行一次。在每一次迭代中,x被指定為陣列的下一列,即在第n次迴圈中,x array n n 0 1 10 y n for i 1 11 y i s...

linux shell之迴圈語句

在日常工作中需要重複執行大量的指令,shell提供了for,while,until,select迴圈語句以實現特定環境下特定指令的反覆利用 每次執行命令序列時都要對條件進行過濾,滿足條件才可執行 語法格式一 for 變數 in 值1 值2 值n do命令序列 done 變數通過賦值in裡面的值,多個...