三種迴圈基本語句:1、while迴圈語句,語法「while(表達式){語句區塊}」;2、do-while迴圈語句,語法「do{語句區塊}while(表達式);」;3、for迴圈語句,語法「for(初始化語句;迴圈條件;自增或自減){語句區塊}」。
本教學操作環境:windows7系統、c99版本、Dell G3電腦。
c語言中用來實作迴圈結構的三種基本語句是:while迴圈語句、do-while迴圈語句、for迴圈語句。
教學推薦:《c語言教學影片》
while迴圈語句
while迴圈的一般形式為:
while(表达式){ 语句块 }
意思是,先計算“表達式”的值,當值為真(非0)時, 執行“語句區塊”;執行完“語句區塊”,再次計算表達式的值,如果為真,繼續執行「語句區塊」…這個過程會一直重複,直到表達式的值為假(0),就退出循環,執行while 後面的程式碼。
我們通常將「表達式」稱為迴圈條件,把「語句塊」稱為循環體,整個迴圈的過程就是不停判斷迴圈條件、並執行迴圈體程式碼的過程。
用while 迴圈計算1加到100的值:
#include <stdio.h> int main(){ int i=1, sum=0; while(i<=100){ sum+=i; i++; } printf("%d\n",sum); return 0; }
執行結果:
5050
程式碼分析:
1) 程式執行到while 時,因為i=1,i
2) 接下來會繼續判斷i
3) 重複執行步驟 2)。
4) 當循環進行到第100次,i 的值變成101,sum 的值變成5050;因為此時i
while 迴圈的整體思路是這樣的:設定一個有變數的迴圈條件,也即一個有變數的表達式;在迴圈體中額外加入一條語句,讓它能夠改變迴圈條件中變數的值。這樣,隨著迴圈的持續執行,循環條件中變數的值也會不斷變化,終有一個時刻,循環條件不再成立,整個循環就結束了。
如果循環條件中不包含變量,會發生什麼情況?
1) 迴圈條件成立時的話,while 迴圈會一直執行下去,永不結束,成為「死迴圈」。
2) 迴圈條件不成立的話,while 迴圈就一次也不會執行。
do-while循環
除了while循環,在C語言中還有一個 do-while 迴圈。
do-while迴圈的一般形式為:
do{ 语句块 }while(表达式);
do-while迴圈與while迴圈的不同在於:它會先執行“語句塊”,然後再判斷表達式是否為真,如果為真則繼續循環;如果為假,則終止循環。因此,do-while 迴圈至少要執行一次「語句塊」。
用do-while計算1加到100的值:
#include <stdio.h> int main(){ int i=1, sum=0; do{ sum+=i; i++; }while(i<=100); printf("%d\n", sum); return 0; }
運行結果:
5050
注意
while(i最後的分號<code>;
,這個必須要有。
for循環語句
除了while循環,C語言中還有 for 循環,它的使用更靈活,完全可以取代 while 循環。
for 迴圈的一般形式為:
for(表达式1; 表达式2; 表达式3){ 语句块 }
它的運作過程為:
1) 先執行「表達式1」--「初始化語句」。
2) 再執行「表達式2」--「循環條件」;如果它的值為真(非0),則執行循環體,否則結束循環。
3) 執行完循環體後再執行「表達式3」--「自增或自減」。
4) 重複執行步驟 2) 和 3),直到「表達式2」的值為假,就結束循環。
在上面的步驟中,2) 和 3) 是一次循環,會重複執行,for 語句的主要作用就是不斷執行步驟 2) 和 3)。
「表達式1」只在第一次迴圈時執行,以後都不會再執行,可以認為這是一個初始化語句。 「表達式2」一般是一個關係表達式,決定了是否還要繼續下次循環,稱為「循環條件」。 「表達式3」很多情況下是一個帶有自增或自減操作的表達式,以使循環條件逐漸變得「不成立」。
for迴圈的執行程序可用下圖表示:
用for語句計算1加到100的值:
#include <stdio.h> int main(){ int i, sum=0; for(i=1; i<=100; i++){ sum+=i; } printf("%d\n",sum); return 0; }
運行結果:
5050
程式碼分析:
1) 執行到for 語句時,先給i 賦初值1,判斷i
2) 第二次迴圈時,i 的值為2,i
3) 重複執行步驟 2),直到第101次循環,此時 i 的值為101,i
更多程式相關知識,請造訪:程式設計教學! !
以上是c語言中用來實作迴圈結構的三種基本語句是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!