tft每日頭條

 > 生活

 > c語言用while避免死循環

c語言用while避免死循環

生活 更新时间:2024-07-26 21:19:24
循環語法結構

“循環”這個詞在我們日常生活中經常遇到,例如:循環播放某一首歌曲;就是一直在做某一件事情,重複地做某一件事情。那麼,在C語言中,提供了“循環”控制語句,也是一樣的道理,就是重複做某一件事情。

例如,當我們循環播放某一首歌曲,聽膩了的時候,我們可以選擇停止播放。所以,對于“循環”控制語句,也應該提供“停止循環”的機制。

計算機程序的優點,就是可以循環、不停地做某一件事情,所以,在程序設計中,循環控制是一種非常重要的控制語句。C語言提供了多種循環控制語句,下面我們一一來學習。

while語句

在C語言中,提供了while語句來進行循環控制。它的格式如下:

while(表達式) 循環語句;

該語句的執行流程是:

(1)步驟一:判斷小括号中的表達式的值,如果表達式的值為,則執行while後面的循環語句;如果表達式的值為,則不執行循環語句,而且結束while語句的執行;

(2)步驟二:如果表達式的值為,執行完循環語句之後,回到步驟一繼續循環判斷執行;

while語句的執行流程可以如下圖所示:

c語言用while避免死循環(C語言的while循環語法)1

所以,可以看到,如果表達式的值為真,那麼,就一直執行循環語句。直到表達式的值為假的時候,才結束while()語句。如下是一個程序測試例子:

c語言用while避免死循環(C語言的while循環語法)2

程序運行的結果如下:

c語言用while避免死循環(C語言的while循環語法)3

我們來分析一下這個測試例子的執行過程:

(1) 定義 int 類型變量 i,它的值為3;

(2) 執行while(i--),那麼,i--表達式的值是i變化之前的值,所以,i--表達式的值為3,此時,表達式的值為非0,所以,為,執行循環語句。所以,執行循環體的循環語句:

printf("i = %d\n", i); //循環體執行的語句

輸出i的值;由于已經執行了i--,所以,i變量的值為2,所以,輸出 i = 2;

(3) 繼續執行while(i--),此時,i的值為2,那麼,i--表達式的值為i變化之前的值,所以,i--表達式的值為2;是非0值,所以,為,繼續執行循環語句,輸出i變量的值;由于執行了i--,所以,i變量的值為1,所以,輸出i = 1;

(4) 繼續執行while(i--),此時,i的值為1,那麼,i--表達式的值為i變化之前的值,所以,i--表達式的值為1;是非0值,所以,為,繼續執行循環語句,輸出i變量的值;由于執行了i--,所以,i變量的值為0,所以,輸出i = 0;

(5) 繼續執行while(i--),此時,i的值為0,那麼,i--表達式的值為i變化之前的值,所以,i--表達式的值為0;是0值,所以,為“”;此時,while(表達式)中的表達式的值為“假”,那麼,就結束while循環的執行。

所以,就不執行循環語句,而且結束while循環語句。

那麼,我們可以總結,對于while循環語句,如果while(表達式)中的表達式值為,那麼,就執行循環語句。如果表達式的值為假,就不執行循環語句,而且結束while語句的執行。

在上面的例子中,我們執行的循環語句隻有一條,那麼,如果想要循環執行多條語句,應該怎麼樣?

如果要想循環執行多條語句,可以使用大括号{}把多條語句包含起來,作為while循環的執行體,那麼,就可以循環執行多條語句,定義的格式如下:

while(表達式)

{

循環語句1;

循環語句2;

循環語句N;

}

那麼,就有:

(1) 如果表達式的值為真,就執行大括号{}定義的循環體,執行循環體中定義的循環語句;執行完循環體中的循環語句之後,繼續判斷表達式的值。

(2) 如果表達式的值為假,就不執行循環體中的循環語句,而且結束while語句的執行。

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关生活资讯推荐

热门生活资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved