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

一、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