📜  C while和do … while循环

📅  最后修改于: 2020-10-04 12:10:29             🧑  作者: Mango

在本教程中,您将在示例的帮助下学习在C编程中创建while和do … while循环。

在编程中,循环用于重复代码块,直到满足指定条件为止。

C编程具有三种类型的循环。

  1. for循环
  2. while循环
  3. 做… while循环

在上一教程中,我们了解了for循环。在本教程中,我们将学习whiledo..while循环。


while循环

while循环的语法为:

while (testExpression) 
{
    // statements inside the body of the loop 
}

while循环如何工作?

  • while循环在括号()评估测试表达式。
  • 如果测试表达式为true,则执行while循环体内的语句。然后,再次评估测试表达式。
  • 该过程一直进行到测试表达式被评估为false为止。
  • 如果测试表达式为假,则循环终止(结束)。

要了解有关测试表达式的更多信息(当测试表达式被评估为真和假时),请查看关系运算符和逻辑运算符。


While循环流程图

flowchart of while loop in C programming


示例1:while循环

// Print numbers from 1 to 5

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

    return 0;
}

输出

1
2
3
4
5

在这里,我们将i初始化为1。

  1. i为1时,测试表达式i <= 5为真。因此,执行while循环的主体。这将在屏幕上打印1,并且i的值增加到2。
  2. 现在, 是2,测试表达式i <= 5再次成立。 while循环的主体将再次执行。在屏幕上打印2, i的值增加到3。
  3. 该过程一直进行到i变为6为止。当i为6时,测试表达式i <= 5将为false,并且循环终止。

做… while循环

do..while循环与while循环相似, while有一个重要区别。 do...while循环的主体至少执行一次。只有这样,才对测试表达式求值。

do...while循环的语法为:

do
{
   // statements inside the body of the loop
}
while (testExpression);

… while循环如何工作?

  • do … while循环的主体执行一次。只有这样,才对测试表达式求值。
  • 如果测试表达式为true,则再次执行循环主体并评估测试表达式。
  • 这个过程一直进行到测试表达式变为假。
  • 如果测试表达式为假,则循环结束。

do … while循环流程图

do while loop flowchart in C programming


示例2:do … while循环

// Program to add numbers until the user enters zero

#include 
int main()
{
    double number, sum = 0;

    // the body of the loop is executed at least once
    do
    {
        printf("Enter a number: ");
        scanf("%lf", &number);
        sum += number;
    }
    while(number != 0.0);

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

    return 0;
}

输出

Enter a number: 1.5
Enter a number: 2.4
Enter a number: -3.4
Enter a number: 4.2
Enter a number: 0
Sum = 4.70