前言
for循环
for
循环是最常用的循环之一,适用于当你知道循环需要执行多少次时使用。for
循环的语法如下:
- 初始化表达式:在循环开始前执行,通常用于初始化循环控制变量。
- 循环条件表达式:在每次循环开始前评估。如果条件为真(非0),则执行循环体;如果条件为假(0),则退出循环。
- 更新表达式:在每次循环体执行完毕后执行,通常用于更新循环控制变量。
示例
#include <stdio.h>
int main() {
for (int i = 0; i < 5; i++) {
printf("%d ", i);
}
return 0;
}
输出
[注意]:
for( ; ; ;)使用分号分开,如果没有,可以空缺,也要加分号;
注意判断<,<=不一样,循环次数不一样;
while
循环
while
循环在给定条件为真时重复执行代码块。while
循环的语法如下:
示例
#include <stdio.h>
int main() {
int i = 0;
while (i < 5)
{
printf("%d", i);
i++;
}
return 0;
}
输出
do-while
循环
do-while
循环至少执行一次循环体,然后在每次循环体执行后评估条件表达式。如果条件为真,则继续执行循环体;如果条件为假,则退出循环。do-while
循环的语法如下:
示例
#include <stdio.h>
int main() {
int i = 0;
do {
printf("%d ", i);
i++;
} while (i < 5);
return 0;
}
输出
总结
- 使用
for
循环当你知道循环需要执行多少次时。 - 使用
while
循环当你不确定循环需要执行多少次,但循环继续的条件在循环开始前已知时。 - 使用
do-while
循环当你想确保循环体至少执行一次时,无论循环条件如何。
循环嵌套
C语言中的循环嵌套指的是在一个循环结构内部再嵌套另一个或多个循环结构。
这里我们将通过for
循环嵌套的例子来展示如何使用循环嵌套。
示例:使用嵌套循环打印九九乘法表
#include <stdio.h>
int main() {
int i, j;
for(i = 1; i <= 9; i++) { // 外层循环,控制行
for(j = 1; j <= i; j++) { // 内层循环,控制列
printf("%d*%d=%d\t", j, i, i*j); // 打印乘法表的一项
}
printf("\n"); // 每完成一行的打印后换行
}
return 0;
}
在这个例子中,外层循环(i
循环)负责控制行,内层循环(j
循环)负责控制列。j
的循环次数依赖于i
的值,即每行的列数随着行数的增加而增加,从而形成了乘法表的形状。
注意
- 循环控制变量:在嵌套循环中,要注意不同循环之间的控制变量不要混淆。
- 循环结束条件:要正确设置每个循环的结束条件,确保循环能够按预期工作。
- 循环效率:过多的嵌套循环可能导致代码执行效率低下,特别是在处理大数据集时。在设计算法时,应尽量避免不必要的嵌套循环,或者寻找更优的算法来减少嵌套深度。
- 可读性与维护性:嵌套循环可能使代码的可读性和维护性降低。为了提高代码质量,应适当添加注释,并使用合理的变量命名和缩进。