C 语言循环语句
一般情况下,语句是按顺序执行的:函数中的第一个语句先执行,接着是第二个语句,依此类推。但有的时候,我们可能需要多次执行同一块代码,C 语言提供的循环语句解决了我们的问题。
循环语句和前面的条件语句,为编程语言提供了更为复杂执行路径的多种控制结构。
循环语句允许我们多次执行一个语句或语句组。
循环语句流程图
大多数编程语言循环语句的流程图如下:
循环类型
C 语言提供了丰富循环类型
循环类型 | 描述 |
---|---|
while 循环 | 当给定条件为真时,重复语句块。它会在执行循环主体之前测试条件 |
for 循环 | 与 while 语句类似,但它是先执行一遍循环代码,然后再判断测试条件 |
嵌套循环 | 可以在 while、for 或 do..while 循环内使用一个或多个循环 |
循环控制语句
循环控制语句改变原本的循环执行方式,通过循环控制语句,我们可以实现代码的跳转。
C 提供了丰富的循环控制语句
控制语句 | 描述 |
---|---|
break 语句 | 终止循环或switch语句 程序流将继续执行紧接着循环或 switch 的下一条语句 |
continue 语句 | 告诉一个循环体立刻停止本次循环迭代,重新开始下次循环迭代 |
goto 语句 | 将控制转移到被标记的语句不推荐 |
不建议在程序中使用 goto 语句
无限循环
如果条件永远为真,那么循环将一直执行下去。
for 循环语句可用于实现无限循环,因为构成循环的三个表达式中任何一个都不是必需的,我们可以将某些条件表达式留空来构成一个无限循环。
范例
#include <stdio.h> int main () { for( ; ; ) { printf("该循环会永远执行下去!\n"); } return 0; }
当条件表达式不存在时,它被假设为真。我们也可以设置一个初始值和增量表达式。
但是我们写 C 程序时更偏爱使用 for(;;)
结构来表示一个无限循环。
编译和和运行上面的范例,输出结果如下
$ gcc main.c && a.out
该循环会永远执行下去!你可以按 CTRL+D 退出程序
该循环会永远执行下去!你可以按 CTRL+D 退出程序
该循环会永远执行下去!你可以按 CTRL+D 退出程序
该循环会永远执行下去!你可以按 CTRL+D 退出程序
该循环会永远执行下去!你可以按 CTRL+D 退出程序
该循环会永远执行下去!你可以按 CTRL+D 退出程序
该循环会永远执行下去!你可以按 CTRL+D 退出程序
该循环会永远执行下去!你可以按 CTRL+D 退出程序
该循环会永远执行下去!你可以按 CTRL+D 退出程序
该循环会永远执行下去!你可以按 CTRL+D 退出程序
该循环会永远执行下去!你可以按 CTRL+D 退出程序
....