for迴圈語句頭的執行順序

2021-06-19 17:41:20 字數 1474 閱讀 5736

for迴圈語句頭有3個部分:初始化、判讀條件、乙個表示式

有3個疑惑:

1、第一次例如初始化i=0,是否還執行後面的i++或++i?

第一次先初始化,然後判斷,i++就不執行了

2、第一次完了以後,初始化這句就不用了,是先執行i++還是限制性判斷語句呢?

先執行i++

3、現在知道是先執行i++,再執行判斷語句,i++不是後++嗎,例如i為1,那i++後執行判斷語句,i是幾呢?

i是2.

4、好像i++和++i在for()裡時結果都一樣。

都一樣,for語句頭的執行順序決定了這兩個寫法都一樣,都是i++或這++i這兩句執行完了再進行判斷,此時(兩種情況)i已經加1了。

在csdn上看到一篇文章:

在乙個技術qq群中,試著做了一道c的題,感覺是考察for迴圈的執行流程.

原題: 在c語言中,下列**的輸出結果是 ( ) (選擇一項)

void main( )

void main( )

{int i = 0, j = 10;

for(i=0;((print1(i,j)) && (i

執行結果是:

執行判斷條件,i=0,j=10

0,10

執行for迴圈體中的最後一句,i=0,j=10

執行for()中的第三個語句,i=1,j=9

執行判斷條件,i=1,j=9

執行for迴圈體中的最後一句,i=1,j=10

執行for()中的第三個語句,i=2,j=9

執行判斷條件,i=2,j=9

執行for迴圈體中的最後一句,i=2,j=10

執行for()中的第三個語句,i=3,j=9

執行判斷條件,i=3,j=9

執行for迴圈體中的最後一句,i=3,j=10

執行for()中的第三個語句,i=4,j=9

執行判斷條件,i=4,j=9

執行for迴圈體中的最後一句,i=4,j=10

執行for()中的第三個語句,i=5,j=9

執行判斷條件,i=5,j=9

執行for迴圈體中的最後一句,i=5,j=10

執行for()中的第三個語句,i=6,j=9

執行判斷條件,i=6,j=9

執行for迴圈體中的最後一句,i=6,j=10

執行for()中的第三個語句,i=7,j=9

執行判斷條件,i=7,j=9

執行for迴圈體中的最後一句,i=7,j=10

執行for()中的第三個語句,i=8,j=9

執行判斷條件,i=8,j=9

執行for迴圈體中的最後一句,i=8,j=10

執行for()中的第三個語句,i=9,j=9

執行判斷條件,i=9,j=9

9,9--------------

所以執行順序是:初始化--判斷--函式體——然後for迴圈的第3句--判斷——函式體---for迴圈的第三句--判斷……

for迴圈的語句執行順序

在乙個技術qq群中,試著做了一道c的題,感覺是考察for迴圈的執行流程.原題 在c語言中,下列 的輸出結果是 選擇一項 void main j printf d,d i,j a 0,109,9 b 0,10 10,10c 10,10d 9,11 群裡居然有不少人都選了b,那個提問者還一直在問正確的結...

for迴圈的語句執行順序

在乙個技術qq群中,試著做了一道c的題,感覺是考察for迴圈的執行流程.原題 在c語言中,下列 的輸出結果是 選擇一項 void main j printf d,d i,j a 0,109,9 b 0,10 10,10c 10,10d 9,11 群裡居然有不少人都選了b,那個提問者還一直在問正確的結...

筆記 for迴圈語句的執行順序

今天在做如下題目的時候遇到了問題 我當時的 如下 include intmain printf d n return0 當 編譯執行之後便出現了問題,按照輸入輸出樣例來看,輸入1後應該輸出2,但執行結果確實3 隨後經過除錯,網上查詢資訊後發現是對for迴圈語句的理解不到位 乙個簡單的for語句有以下...