原文: https://www.programiz.com/c-programming/c-do-while-loops
在本教程中,您将在示例的帮助下学习在 C 编程中创建while和do...while循环。
在编程中,循环用于重复代码块,直到满足指定条件为止。
C 编程具有三种类型的循环。
for循环while循环do...while循环
在上一个教程中,我们了解了for循环。 在本教程中,我们将学习while和do..while循环。
while循环
while循环的语法为:
while (testExpression){// statements inside the body of the loop}
while循环如何工作?
while循环求值括号()内的测试表达式。- 如果测试表达式为
true,则执行while循环体内的语句。 然后,再次求值测试表达式。 - 该过程一直进行到测试表达式被求值为
false为止。 - 如果测试表达式为假,则循环终止(结束)。
要了解有关测试表达式的更多信息(将测试表达式求值为真和假时),请查看关系和逻辑运算符。
While循环流程图

示例 1:while循环
// Print numbers from 1 to 5#include <stdio.h>int main(){int i = 1;while (i <= 5){printf("%d\n", i);++i;}return 0;}
输出
12345
在这里,我们已经将i初始化为 1。
- 当
i为 1 时,测试表达式i <= 5为true。 因此,执行while循环的主体。 在屏幕上打印 1,并且i的值增加到 2。 - 现在,
i为 2,则测试表达式i <= 5再次为真。 再次执行while循环的主体。 在屏幕上打印 2,i的值增加到 3。 - 该过程一直进行到
i变为 6 为止。当i为 6 时,测试表达式i <= 5为假,循环终止。
do...while循环
do..while循环类似于while循环,但有一个重要区别。do...while循环的主体至少执行一次。 只有这样,才对测试表达式求值。
do...while循环的语法为:
do{// statements inside the body of the loop}while (testExpression);
do...while循环如何工作?
do...while循环的主体执行一次。 只有这样,才对测试表达式求值。- 如果测试表达式为
true,则再次执行循环主体并求值测试表达式。 - 这个过程一直进行到测试表达式变为假。
- 如果测试表达式为假,则循环结束。
do...while循环流程图

示例 2:do...while循环
// Program to add numbers until the user enters zero#include <stdio.h>int main(){double number, sum = 0;// the body of the loop is executed at least oncedo{printf("Enter a number: ");scanf("%lf", &number);sum += number;}while(number != 0.0);printf("Sum = %.2lf",sum);return 0;}
输出
Enter a number: 1.5Enter a number: 2.4Enter a number: -3.4Enter a number: 4.2Enter a number: 0Sum = 4.70
