C 語言中的 while 循環(huán)
while 循環(huán)語句是 C 語言中最常用的三種循環(huán)語句之一。很多時(shí)候我們會(huì)使用這種循環(huán)來處理無窮無盡的各種請求和響應(yīng)。
1. While 循環(huán)的語法
while( 循環(huán)條件 )
{
// 可以執(zhí)行的語句
}
2. While 循環(huán)的執(zhí)行過程
3. While 循環(huán)的使用場景
在程序中,需要將特定語句部分在滿足循環(huán)條件的情況下循環(huán)執(zhí)行的時(shí)候使用這個(gè)語句。這個(gè)循環(huán)在很多情況下就如同我們在完成自己的作業(yè)。我們每天的作業(yè)數(shù)量是不同的,沒有辦法進(jìn)行設(shè)定每天定量要寫多少。但是,我們知道一條準(zhǔn)則,就是如果沒有寫完,那就要一直寫下去,直到寫完為止。這里的循環(huán)判斷條件就是作業(yè)沒有寫完。那么這個(gè)就是一個(gè) while 循環(huán)。每次都會(huì)檢查一個(gè)條件,如果條件滿足,那么就一直循環(huán)下去。
4. While 循環(huán)的使用實(shí)例
#include <stdio.h>
int main()
{
int x = 10;
while(x>0)
{
printf("Number: %d\n",x);
x--;
}
return 0;
}
運(yùn)行結(jié)果如下:
Number: 10
Number: 9
Number: 8
Number: 7
Number: 6
Number: 5
Number: 4
Number: 3
Number: 2
Number: 1
這個(gè)程序中,首先給 x 變量賦值為 10,在 while 條件中判斷 x 是否大于 0 。如果 x 大于 0 ,則執(zhí)行循環(huán)體中的語句。循環(huán)體中首先是輸出當(dāng)前的 x 值,然后將 x 減去 1 。然后再次判斷 x 是否大于 0 ,如果條件滿足則再次執(zhí)行,條件不滿足則循環(huán)程序執(zhí)行結(jié)束,繼續(xù)向下執(zhí)行。
5. 小結(jié)
while 語句是先進(jìn)行條件判斷,然后再?zèng)Q定是不是要執(zhí)行被括號包圍的循環(huán)體中的內(nèi)容是不是要被執(zhí)行。如果循環(huán)條件滿足則執(zhí)行執(zhí)行程序循環(huán)體中的內(nèi)容。如果不滿足則不執(zhí)行循環(huán)。這也就是說,如果在第一次判斷循環(huán)條件是否滿足的時(shí)候,如果判斷結(jié)果是不滿足,那么包括在循環(huán)語句中的內(nèi)容就一次也不會(huì)被執(zhí)行,直接會(huì)被忽略。
Tips:這個(gè)語句有時(shí)候會(huì)有一個(gè)特別的用途,就是在寫單片機(jī)程序的時(shí)候,你有時(shí)候需要采用輪詢的方式來采集端口的信息,也就是需要不斷的掃描每個(gè)端口的狀態(tài)。這個(gè)時(shí)候,程序會(huì)使用 while(1) 來進(jìn)行。這個(gè)語句其實(shí)是一個(gè)不會(huì)停止的循環(huán)。程序會(huì)反復(fù)不斷的來執(zhí)行程序循環(huán)體中的內(nèi)容。