在本教程中,您将在示例的帮助下学习在C语言编程中创建while和do ... while循环。
在编程中,循环用于重复代码块,直到满足指定条件为止。
C语言编程具有三种类型的循环。
-
for循环
-
while循环
-
do... while循环
在上一教程中,我们了解了for循环。在本教程中,我们将学习while和do..while循环。
while循环
while循环的语法为:
示例
cpp
while (testExpression)
{
// 循环体中的语句
}
while循环如何工作?
-
while循环计算在括号内测试表达式(testExpression)。
-
如果测试表达式(testExpression)为true,则执行while循环体内的语句。然后,再次评估测试表达式(testExpression)。
-
该过程一直进行到测试表达式(testExpression)被评估为false为止。
-
如果测试表达式为假(false),则循止(结束)。
While循环流程图
示例1:while循环
cpp
//打印从1到5的数字
#include <stdio.h>
int main()
{
int i = 1;
while (i <= 5)
{
printf("%d\n", i);
++i;
}
return 0;
}
输出结果
cpp
1
2
3
4
5
在这里,我们已初始化i为1。
-
当i为1时,测试表达式 i <= 5 为true。因此,while执行循环的主体。在屏幕上打印1,并将i其值增加到2。
-
现在i是2,测试表达式 i <= 5 再次为true。while循环主体将再次执行。在屏幕上打印2,并将i其值增加到3。
-
该过程一直进行到i为6时,此时测试表达式 i <= 5 为false,循环终止。
do... while 循环
do..while循环类似于while循环,但有一个重要区别。do...while循环主体至少执行一次。执行一次后,才对测试表达式求值。
do...while循环的语法为:
示例
cpp
do
{
//循环体内的语句
}
while (testExpression);
do... while循环如何工作?
-
do ... while循环的主体执行一次。只有这样执行一次后,才对测试表达式求值。
-
如果测试表达式(testExpression)为true,则再次执行循环主体并评估测试表达式(testExpression)。
-
这个过程一直进行到测试表达式变为false。
-
如果测试表达式为false,则循环结束。
do ... while循环流程图
示例2:do ... while循环
cpp
//程序添加数字,直到用户输入零
#include <stdio.h>
int main()
{
double number, sum = 0;
//循环的主体至少执行一次
do
{
printf("输入一个数字: ");
scanf("%lf", &number);
sum += number;
}
while(number != 0.0);
printf("总和 = %.2lf",sum);
return 0;
}
输出结果
cpp
输入一个数字: 1.5
输入一个数字: 2.4
输入一个数字: -3.4
输入一个数字: 4.2
输入一个数字: 0
总和 = 4.70