C语言——循环语句
1.for循环
语法:
for ( init; condition; increment ) { statement(s); }
示例代码:
/*for循环语句*/ #include<stdio.h> int main() { for(int i=0; i<10; i++) //定义循环变量并初始化,设置循环条件(有些编译器不允许在for内部定义变量) { //条件成立时,执行循环语句块 printf("%d\n",i); } return 0; }
运行结果:
0 1 2 3 4 5 6 7 8 9
2.while循环
语法:
while(condition) { statement(s); }
示例代码:
/*while循环语句*/ #include<stdio.h> int main() { int i=0; while(i<10)//条件成立时,执行循环语句块 { printf("%d\n",i); i++; } return 0; }
运行结果:
0 1 2 3 4 5 6 7 8 9
3.do...while循环
语法:
do { statement(s); }while( condition );
示例代码:
/*do...while循环语句*/ #include<stdio.h> int main() { int i=0; do //先执行循环语句块 { printf("%d\n",i); i++; } while(i<10); //判断条件是否成立 return 0; }
运行结果:
0 1 2 3 4 5 6 7 8 9
4.break语句
用于跳出循环。
(1)当 break 语句出现在一个循环内时,循环会立即终止,且程序流将继续执行紧接着循环的下一条语句。
(2)它可用于终止 switch 语句中的一个 case。
(3)如果您使用的是嵌套循环(即一个循环内嵌套另一个循环),break 语句会停止执行最内层的循环,然后开始执行该块之后的下一行代码。
语法:
break;
示例代码:
/*break跳出循环*/ #include<stdio.h> int main() { for(int i=0; i<10; i++) { if (i==5) { break;//break用于跳出循环 } printf("%d\n",i); } return 0; }
运行结果:
0 1 2 3 4
5.continue语句
(1)跳过当前循环中的代码,强迫开始下一次循环。
(2)对于 for 循环,continue 语句执行后自增语句仍然会执行。
语法:
continue;
示例代码:
/*continue执行下一次循环*/ #include<stdio.h> int main() { int i=0; while(i<10) { i++; if (i==5) { continue;//跳出本次循环,执行一下次循环 } printf("%d\n",i); } return 0; }
运行结果:
1 2 3 4 6 7 8 9 10
6.goto语句
goto 语句允许把控制无条件转移到同一函数内的被标记的语句。
注意:在任何编程语言中,都不建议使用 goto 语句。因为它使得程序的控制流难以跟踪,使程序难以理解和难以修改。任何使用 goto 语句的程序可以改写成不需要使用 goto 语句的写法。
语法:
goto label; .. label: statement;
示例代码:
/*goto跳至标记的语句*/ #include<stdio.h> int main() { int i=0; Label: while(i<10)//条件成立时,执行循环语句块 { i++; if (i==5) { goto Label;//直接跳至Label处 } printf("%d\n",i); } return 0; }
运行结果:
1 2 3 4 6 7 8 9 10
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南