C 语言 while 和 do...while 循环

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

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

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

  1. for循环

  2. while循环

  3. 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。

  1. 当i为1时,测试表达式 i <= 5 为true。因此,while执行循环的主体。在屏幕上打印1,并将i其值增加到2。

  2. 现在i是2,测试表达式 i <= 5 再次为true。while循环主体将再次执行。在屏幕上打印2,并将i其值增加到3。

  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
相关推荐
李白同学2 分钟前
【C语言】结构体内存对齐问题
c语言·开发语言
楼台的春风1 小时前
【MCU驱动开发概述】
c语言·驱动开发·单片机·嵌入式硬件·mcu·自动驾驶·嵌入式
waicsdn_haha10 小时前
Visual Studio Code 2025 安装与高效配置教程
c语言·ide·windows·vscode·微软·编辑器·win7
----云烟----11 小时前
C/C++ 中 volatile 关键字详解
c语言·开发语言·c++
BanLul11 小时前
进程与线程 (三)——线程间通信
c语言·开发语言·算法
落羽的落羽11 小时前
【落羽的落羽 数据结构篇】栈和队列
c语言·数据结构
谏君之13 小时前
C语言实现的常见算法示例
c语言·算法·排序算法
曾浩轩13 小时前
51单片机学习之旅——C语言小知识
c语言·学习·51单片机
Want59514 小时前
C/C++跳动的爱心
c语言·开发语言·c++
kongba00714 小时前
Cursor提示词模板,开发GD32,C语言开发GD32 ARM单片机编程规范提示词 大厂风格代码规范
c语言·arm开发·单片机