C语言中循环语句有几种

来源:IPIPP.com作者:头衔:全栈工程师
导读:本期聚焦于小伙伴创作的《C语言中循环语句有几种》,敬请观看详情,探索知识的价值。以下视频、文章将为您系统阐述其核心内容与价值。如果您觉得《C语言中循环语句有几种》有用,将其分享出去将是对创作者最好的鼓励。

C语言作为一门基础且应用广泛的编程语言,循环语句是其实现重复执行逻辑的核心组成部分,很多刚入门的开发者都会问C语言中循环语句有几种。实际上C语言本身只提供了三种标准循环语句,分别是for循环、while循环和do while循环,下面我们逐一介绍它们的用法和特点。

C语言中循环语句有几种

一、for循环

for循环是C语言中最常用的循环结构之一,适合已知循环次数的场景,语法格式固定,结构清晰。

1. 语法格式

for(初始化表达式; 条件判断表达式; 更新表达式) {
    // 循环体代码
}

2. 执行流程

  • 首先执行初始化表达式,该步骤只会执行一次,通常用于定义循环变量
  • 执行条件判断表达式,如果结果为真(非0),则执行循环体代码;如果结果为假(0),则直接退出循环
  • 循环体执行完成后,执行更新表达式,通常用于修改循环变量的值
  • 重复执行条件判断、循环体、更新的步骤,直到条件判断为假时结束循环

3. 代码示例

下面是用for循环打印1到5的数字的示例:

#include <stdio.h>

int main() {
    // 定义循环变量i,初始值为1,i小于等于5时执行循环,每次循环后i自增1
    for(int i = 1; i <= 5; i++) {
        printf("%d ", i);
    }
    // 输出结果:1 2 3 4 5
    return 0;
}

二、while循环

while循环是入口条件循环,先判断条件再执行循环体,适合循环次数不确定,但明确循环条件的场景。

1. 语法格式

while(条件判断表达式) {
    // 循环体代码
    // 通常需要包含修改条件的代码,避免死循环
}

2. 执行流程

  • 首先判断条件判断表达式的结果,如果为真则执行循环体,为假则直接退出循环
  • 循环体执行完成后,再次回到条件判断步骤,重复上述过程直到条件为假

3. 代码示例

下面是用while循环计算1到100的和的示例:

#include <stdio.h>

int main() {
    int sum = 0;
    int i = 1;
    // 当i小于等于100时执行循环
    while(i <= 100) {
        sum += i;
        i++; // 修改循环变量,避免死循环
    }
    printf("1到100的和为:%d", sum); // 输出结果:5050
    return 0;
}

三、do while循环

do while循环是出口条件循环,先执行一次循环体再判断条件,适合至少需要执行一次循环体的场景。

1. 语法格式

do {
    // 循环体代码
    // 通常需要包含修改条件的代码,避免死循环
} while(条件判断表达式);

注意:do while循环的条件判断后面必须加分号,这是和while循环的重要区别。

2. 执行流程

  • 首先无条件执行一次循环体代码
  • 执行完成后判断条件判断表达式的结果,如果为真则继续回到循环体执行,为假则退出循环

3. 代码示例

下面是用do while循环实现输入正整数并验证的示例,确保至少执行一次输入操作:

#include <stdio.h>

int main() {
    int num;
    do {
        printf("请输入一个正整数:");
        scanf("%d", &num);
    } while(num <= 0); // 如果输入的数不是正数,就继续要求输入
    printf("你输入的正整数是:%d", num);
    return 0;
}

三种循环的区别与选择

我们可以通过下面的表格快速对比三种循环的特点:

循环类型特点适用场景
for循环初始化、条件判断、更新表达式集中写在括号中,结构紧凑已知循环次数的场景
while循环先判断条件再执行循环体,可能一次都不执行循环体循环次数不确定,先判断条件的场景
do while循环先执行一次循环体再判断条件,至少执行一次循环体至少需要执行一次循环体的场景

在实际开发中,三种循环可以互相替换,选择哪种循环主要看场景是否匹配,合理的选择可以让代码逻辑更清晰,可读性更高。

C语言循环语句for循环while循环do_while循环修改时间:2026-05-29 04:12:13

免责声明:​ 已尽一切努力确保本网站所含信息的准确性。网站内容多为原创整理与精心编撰,观点力求客观中立。本站旨在免费分享,内容仅供个人学习、研究或参考使用。若引用了第三方作品,版权归原作者所有。如内容涉及您的权益,请联系我们处理。
内容垂直聚焦
专注技术核心技术栏目,确保每篇文章深度聚焦于实用技能。从代码技巧到架构设计,为用户提供无干扰的纯技术知识沉淀,精准满足专业提升需求。
知识结构清晰
覆盖从开发到部署的全链路。AI、前端、编程、数据库、服务器、建站、系统层层递进,构建清晰学习路径,帮助用户系统化掌握开发与运维所需的核心技术。
深度技术解析
拒绝泛泛而谈,深入技术细节与实践难点。无论是数据库优化还是服务器配置,均结合真实场景与代码示例进行剖析,致力于提供可直接应用于工作的解决方案。
专业领域覆盖
精准对应开发生命周期。从前端界面到后端编程,从数据库操作到服务器运维,形成完整闭环,一站式满足全栈工程师和运维人员的技术需求。
即学即用高效
内容强调实操性,步骤清晰、代码完整。用户可根据教程直接复现和应用于自身项目,显著缩短从学习到实践的距离,快速解决开发中的具体问题。
持续更新保障
专注既定技术方向进行长期、稳定的内容输出。确保各栏目技术文章持续更新迭代,紧跟主流技术发展趋势,为用户提供经久不衰的学习价值。