for循环break continue

break

//代码1
#include
int main()
{
 int i = 0;
 for(i=1; i<=10; i++)
 {
 if(i == 5)
 break;
 printf("%d ",i);
 }
 return 0;
}
输出结果为:1 2 3 4

这是因为,当i==5时,执行了break语句,跳出了整个for循环。

continue

再看代码2:

//代码2
#include
int main()
{
 int i = 0;
 for(i=1; i<=10; i++)
 {
 if(i == 5)
 continue;
 printf("%d ",i);
 }
 return 0;
}
输出结果为:1 2 3 4 6 7 8 9 10

这是因为,当i==5时,下一步执行continue语句,continue后面的语句全部不执行,直接跳到下一次for循环。

这里是不会出现死循环的。

因为执行完stmt后,会自动执行表达式3,也就是i++,那么下一次循环的时候i==6,不再满足if的判断,所以不会出现死循环。
全部评论

相关推荐

牛客154160166号:9月底还给我发短信,好奇怪,我24届的
点赞 评论 收藏
分享
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务