您好,登錄后才能下訂單哦!
這篇文章主要講解了“如何理解c++ For循環執行順序流程”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“如何理解c++ For循環執行順序流程”吧!
for 循環允許您編寫一個執行特定次數的循環的重復控制結構。
語法
C++ 中 for 循環的語法:
for ( init; condition; increment ) { statement(s); }
下面是 for 循環的控制流:
init 會首先被執行,且只會執行一次。這一步允許您聲明并初始化任何循環控制變量。您也可以不在這里寫任何語句,只要有一個分號出現即可。
接下來,會判斷 condition。如果為真,則執行循環主體。如果為假,則不執行循環主體,且控制流會跳轉到緊接著 for 循環的下一條語句。
在執行完 for 循環主體后,控制流會跳回上面的 increment 語句。該語句允許您更新循環控制變量。該語句可以留空,只要在條件后有一個分號出現即可。
條件再次被判斷。如果為真,則執行循環,這個過程會不斷重復(循環主體,然后增加步值,再然后重新判斷條件)。在條件變為假時,for 循環終止。
流程圖
有以下for循環執行代碼
較為基礎,所以畫圖給大家講解一下for循環執行步驟
1.執行for循環體里的第一個參數,也就是定義一個int整形變量,其變量名為i,并初始化為0
2.執行完第一個參數里的代碼后,會執行第二個參數,判斷i是否小于99
3.當第二個表達式為True時會去執行循環體里的代碼,也就是當i不等于99的時候
4.執行完循環體里的代碼后,就會去執行for循環的第三個參數也就是++i
當以上流程執行完成之后,進入非第一次執行循環時就不會執行for循環第一個參數了
而是直接去執行第二個參數里的判斷表達式
然后在去執行循環體里的代碼
然后在執行for循環的第三個參數
直到參數二:i>99的時候循環才會結束
i=98是最后一次循環,(i++/++i在for循環沒有區別,不知道為啥,反正結構一樣),這是i=99會執行第二步,不滿足條件,跳出循環體,如果在循環體內打印i,i的最終結果為98(從0開始一共執行了99次,從1開始一共執行了98次,),如果在循環體外打印i,i的最終結果為99,大概這樣
實例代碼
#include <stdio.h> #include <srdlib.h> int main(void) { char c; for(c=getchar();getchar()!='#';c=getchar()) putchar(c); }
運行結果如下:
這是怎么執行的呢?
首先需要明確的一點是,for循環語句的執行順序
先舉一個簡單的例子,
for(int i=0;i<10;i++){
//循環體
}
執行數序是:
i=0 初始化初值
i<10 進行判斷,如果條件為真,則繼續執行
執行循環體代碼
i++ 變量i自增
回到第2步,一直循環下去,直到第2步為假, 退出循環.
總結一下:
for(條件①;條件②;條件③){
循環體④
}
執行順序如下:
①②④③ ②④③ ②④③... ...直到結束
我們再來分析一下開頭的案例
控制臺輸入:12345#
首先執行第一個getchar(),得到c=1;
然后執行第二個getchar(),得到c=2,同時判斷 2 != '#' ;
然后執行循環體輸出1;
然后執行第三個getchar(),得到c=3;
(此時一輪循環結束,回到for循環的條件②執行第二輪循環)
執行第二個getchar(),得到c=4,同時判斷 4!= '#' ;
然后執行循環體輸出3;
然后執行第三個getchar(),得到c=5;
(第二輪循環結束,再次回到for循環的條件②執行第三輪循環)
執行第二個getchar(),得到c=#,判斷 ‘#'= '#' ,循環結束;
感謝各位的閱讀,以上就是“如何理解c++ For循環執行順序流程”的內容了,經過本文的學習后,相信大家對如何理解c++ For循環執行順序流程這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。