for迴圈的介紹,C語言中for迴圈怎麼理解?

2021-03-19 18:23:16 字數 3032 閱讀 5075

1樓:詛咒

for迴圈程式語言中的語句之一,用於迴圈執行。for迴圈是開界的,它的一般形式為: for(; 《條件表示式》; ) 語句; 初始化通常是一個賦值語句, 它用來給迴圈控制變數賦初值; 條件表示式是一個關係表示式, 它決定什麼時候退出迴圈; 增量定義迴圈控制變數每迴圈一次後 按什麼方式變化。

這三個部分之間用;分開。 例如:for(i=1; i<=10; i++) 語句; 上例中先給i賦初值1, 判斷i是否小於等於10, 若是則執行語句, 之後值增 加1。

再重新判斷, 直到條件為假, 即i>10時, 結束迴圈。for語句比while語句和do-while都要靈活,是一種功能更大、更常用的迴圈語句,它的一般語法格式為:for(表示式1;表示式2;表示式3)其中,表示式可以省略,但是分號不可省略。

for迴圈並沒有嚴格規定三個語句必須是什麼型別的語句,例如表示式1也可以寫其他可執行的**,這條**將必執行且只執行一次;表示式2每次迴圈前都會執行,並判斷它的返回值是否為true;表示式3是每次迴圈體執行完後再執行的**。

c語言中for迴圈怎麼理解?

2樓:楓璽

for迴圈是程式語言中一種開界的迴圈語句,而迴圈語句由迴圈體及迴圈的終止條件兩部分組成,for迴圈一般形式為:for(單次表示式;條件表示式;末尾迴圈體)。

執行的中間迴圈體可以為一個語句,也可以為多個語句,當中間迴圈體只有一個語句時,其大括號{}可以省略,執行完中間迴圈體後接著執行末尾迴圈體  。執行末尾迴圈體後將再次進行條件判斷,若條件還成立,則繼續重複上述迴圈,當條件不成立時則跳出當下for迴圈。

for迴圈例項:

# include

int main(void)

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

return 0;}

假如 n=4,當 i=1 時,m=1,sum=1。當 i=2 時,m=1×2,sum=1+1×2。當 i=3 時,m=1×2×3,sum=1+1×2+1×2×3。

當 i=4 時,m=1×2×3×4sum=1+1×2+1×2×3+1×2×3×4。

擴充套件資料

for迴圈注意事項:

1、for迴圈的**不僅可以寫一句,也可以寫多句(保證第二部分的返回值是布林值)

2、for迴圈的三個部分都可以省略。第一部分省略表示不初始化;第二部分省略表示不判斷,預設值為true;第三部分省略表示省略後什麼也不執行。

3、小迴圈在外,大迴圈在內、

4、如果for迴圈有條件判斷,可以將條件放到for迴圈外。

5、 for迴圈中的"單次表示式"、"條件表示式"和"迴圈體語句"都是選擇項, 即可以預設成只剩下「;」的空語句, ";"不能預設的原因是編譯格式如此,預設了編譯器不認識而會報錯。

3樓:guxuecan劍

以題目中的程式為例子:

for(i=0;i<10;i++)

a+=i;

for迴圈裡面的三個引數為三個表示式:

第一個控制表示式」i=1「在迴圈開始時執行,且只執行一次。

第二個控制表示式必須是一個邏輯表示式,且在每次迴圈迭代開始重複前計算。

第三個控制表示式」i++「在每一次迴圈迭代結束時執行。

只有第二個邏輯表示式為真時,語句塊內的語句才執行。

4樓:匿名使用者

1、for是c語言中的一個關鍵字,主要用來控制迴圈語句的執行。

2、下面舉例說明for語句的使用方法:

int i;

for(i=0; i<3; i++)

// i=0是初始化部分;i<3是迴圈判斷條件部分(當滿足此條件時才進入執行for迴圈中的語句);i++是執行完迴圈體語句後的操作

// 上面的for語句就是控制輸出3次helloworld

5樓:匿名使用者

a+=i就是a=a+i,

for迴圈語句就是:i=0時,a=a+0;再執行i++,即i=1;再執行a=a+i,一直到i=9,為止,能看懂嗎?

6樓:匿名使用者

初始時,i=0,開始迴圈。

第一步:a+=i;然後i++,i變成1,1<10,繼續迴圈;

第二步:a+=i;然後i++,i變成2,2<10,繼續迴圈;

。。。第九步:a+=i;然後i++,i變成9,9<10,繼續迴圈;

第十步:a+=i;然後i++,i變成10,10<10不成立,迴圈結束

7樓:匿名使用者

a相當於一個累加器 每次都用a和i的值相加 然後再把結果存在a中 ,直到i=10為止

a=a+0;

a=a+1;

a=a+2;

a=a+3;

a=a+4;

a=a+5;

a=a+6;

a=a+7;

a=a+8;

a=a+9;

8樓:匿名使用者

for從i=0開始,如果i<10,進入迴圈體 a+=i;結束之後,i++;然後繼續判斷i<10,然後進入迴圈體,a+=i。。。。。如此迴圈,最後得到a=0+1+2+……+9

9樓:

你只要搞清楚for迴圈3個語句的含義應該就懂了第一個是初始化,第二個是條件語句,第三個是自處理語句;

迴圈時第一個語句只使用一次,然後判斷是否滿足第二個語句,滿足則進入迴圈體執行a+=i,然後i自加1,再判斷是否滿足第二個語句,滿足則進入迴圈體執行a+=i,一直到i不滿足i<10了,迴圈跳出。

開始時,i=0,開始迴圈。假設a初始化為0,第一步:a+=i;然後i++,a=0,i變成1,1<10,繼續迴圈;

第二步:a+=i;然後i++,a=1,i變成2,2<10,繼續迴圈;

。。。第九步:a+=i;然後i++,a=36,i變成9,9<10,繼續迴圈;

第十步:a+=i;然後i++,a=45,i變成10,10<10不成立,迴圈結束

10樓:匿名使用者

第一次i=0,a=a+i,後面依次i=1,2,3。。。9,a=a+i;

C語言中for迴圈語句,c語言中for語句是怎麼用的

for 語句包括三個表示式,第一個和第三個可以省略,省略第一個的意思是在for之前已經對變數初始化,例如i 0 for i 5 i 和for i 0 i 5 i 意思相同 第三個省略的意思也很明顯,原來的i 可以在for迴圈語句中實現,例如 for i 0 i 5 i 和for i 0 i 5 i ...

C語言for迴圈賦值問題,C語言中用for迴圈賦值陣列

在第一次迴圈以後,漏掉了將j清零的操作,這樣在i 1與i 2時,j 4,不會進入輸出的第二級迴圈 c語言中用for迴圈賦值陣列 include main a 0 到a 9 這10個數依次賦值0到9for i 0 i 10 i a i i a 20 到a 29 這10個數全部賦值成9for i 20 ...

在c語言中for迴圈中的迴圈條件是若陣列ai為空

針對字元陣列 for int i 0 a i 0 i 或for int i 0 a i 0 i 注意 這種方式存在越界的風險,因為如果陣列中沒有 0 的字元將會發生越界,最好用sizeof獲取陣列大小,然後再判斷是否為 0 這樣,當迴圈到陣列結束時若任然沒有 0 也會停止迴圈 字元應該加單引號,也就...