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

2021-10-03 09:07:32 字數 703 閱讀 2418

今天在做如下題目的時候遇到了問題:

我當時的**如下:

#include

intmain()

printf

("%d"

, n)

;return0;

}

當**編譯執行之後便出現了問題,按照輸入輸出樣例來看,輸入1後應該輸出2, 但執行結果確實3

隨後經過除錯,網上查詢資訊後發現是對for迴圈語句的理解不到位

乙個簡單的for語句有以下幾部分組成

for

(語句1

; 語句2

; 語句3

)

這時候我們分析一下它的執行順序

第一次:1->2->4

第二次:3->2->4

第三次:3->2->4

…依次進行下去,直到語句2為false

也就是說我的問題處在最後那一步的n的自增上,當不滿足s經過簡單的調整後,提交了最終正確的**

#include

intmain()

printf

("%d"

, n)

;return0;

}

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迴圈語句頭的執行順序

for迴圈語句頭有3個部分 初始化 判讀條件 乙個表示式 有3個疑惑 1 第一次例如初始化i 0,是否還執行後面的i 或 i?第一次先初始化,然後判斷,i 就不執行了 2 第一次完了以後,初始化這句就不用了,是先執行i 還是限制性判斷語句呢?先執行i 3 現在知道是先執行i 再執行判斷語句,i 不是...