C 語言基礎(chǔ)教程

C 語言流程控制

C 語言函數(shù)

C 語言數(shù)組

C 語言指針

C 語言字符串

C 語言結(jié)構(gòu)體

C 語言文件

C 其他

C 語言參考手冊(cè)

C 語言 while 和 do...while 循環(huán)

在本教程中,您將在示例的幫助下學(xué)習(xí)在C語言編程中創(chuàng)建while和do ... while循環(huán)。

在編程中,循環(huán)用于重復(fù)代碼塊,直到滿足指定條件為止。

C語言編程具有三種類型的循環(huán)。

  1. for 循環(huán)

  2. while循環(huán)

  3. do... while循環(huán)

在上一教程中,我們了解了for循環(huán)。在本教程中,我們將學(xué)習(xí)while和do..while循環(huán)。

while循環(huán)

while循環(huán)的語法為:

while (testExpression) 
{
    // 循環(huán)體中的語句 
}

while循環(huán)如何工作?

  • while循環(huán)計(jì)算在括號(hào)內(nèi)測(cè)試表達(dá)式(testExpression)。

  • 如果測(cè)試表達(dá)式(testExpression)為true,則執(zhí)行while循環(huán)體內(nèi)的語句。然后,再次評(píng)估測(cè)試表達(dá)式(testExpression)。

  • 該過程一直進(jìn)行到測(cè)試表達(dá)式(testExpression)被評(píng)估為false為止。

  • 如果測(cè)試表達(dá)式為假(false),則循環(huán)終止(結(jié)束)。

要了解有關(guān)測(cè)試表達(dá)式的更多信息(當(dāng)測(cè)試表達(dá)式被評(píng)估為true和false時(shí)),請(qǐng)查看關(guān)系運(yùn)算符邏輯運(yùn)算符

While循環(huán)流程圖

C語言編程中while循環(huán)的流程圖

示例1:while循環(huán)

//打印從1到5的數(shù)字

#include <stdio.h>
int main()
{
    int i = 1;
    
    while (i <= 5)
    {
        printf("%d\n", i);
        ++i;
    }

    return 0;
}

輸出結(jié)果

1
2
3
4
5

在這里,我們已初始化i為1。

  1. 當(dāng)i為1時(shí),測(cè)試表達(dá)式 i <= 5 為true。因此,while執(zhí)行循環(huán)的主體。在屏幕上打印1,并將i其值增加到2。

  2. 現(xiàn)在i是2,測(cè)試表達(dá)式 i <= 5 再次為true。while循環(huán)主體將再次執(zhí)行。在屏幕上打印2,并將i其值增加到3。

  3. 該過程一直進(jìn)行到i為6時(shí),此時(shí)測(cè)試表達(dá)式 i <= 5 為false,循環(huán)終止。

do... while 循環(huán)

do..while循環(huán)類似于while循環(huán),但有一個(gè)重要區(qū)別。do...while循環(huán)主體至少執(zhí)行一次。執(zhí)行一次后,才對(duì)測(cè)試表達(dá)式求值。

do...while循環(huán)的語法為:

do
{
   //循環(huán)體內(nèi)的語句
}
while (testExpression);

do... while循環(huán)如何工作?

  • do ... while循環(huán)的主體執(zhí)行一次。只有這樣執(zhí)行一次后,才對(duì)測(cè)試表達(dá)式求值。

  • 如果測(cè)試表達(dá)式(testExpression)為true,則再次執(zhí)行循環(huán)主體并評(píng)估測(cè)試表達(dá)式(testExpression)。

  • 這個(gè)過程一直進(jìn)行到測(cè)試表達(dá)式變?yōu)閒alse。

  • 如果測(cè)試表達(dá)式為false,則循環(huán)結(jié)束。

do ... while循環(huán)流程圖

在C語言編程中執(zhí)行while循環(huán)流程圖

示例2:do ... while循環(huán)

//程序添加數(shù)字,直到用戶輸入零
#include <stdio.h>
int main()
{
    double number, sum = 0;

    //循環(huán)的主體至少執(zhí)行一次
    do
    {
        printf("輸入一個(gè)數(shù)字: ");
        scanf("%lf", &number);
        sum += number;
    }
    while(number != 0.0);

    printf("總和 = %.2lf",sum);

    return 0;
}

輸出結(jié)果

輸入一個(gè)數(shù)字: 1.5
輸入一個(gè)數(shù)字: 2.4
輸入一個(gè)數(shù)字: -3.4
輸入一個(gè)數(shù)字: 4.2
輸入一個(gè)數(shù)字: 0
總和 = 4.70
丰满人妻一级特黄a大片,午夜无码免费福利一级,欧美亚洲精品在线,国产婷婷成人久久Av免费高清