虾饺爱下棋 2022-10-15 08:44 采纳率: 100%
浏览 23
已结题

break语句使用时产生的某种疑问

问题遇到的现象和发生背景

在大一教材书上有关continue和break语句时产生的疑惑

用代码块功能插入代码,请勿粘贴截图

#include <stdio.h>
int main()
{
int k=4,n;
for(n=0;n<k;n++)
{
if(n%2==0)
{
k+=5;
break;
}
k--;
}
printf("k=%d, n=%d\n",k,n);
return 0;
}

运行结果及报错内容

结果k=9,n=0

我想要达到的结果

break语句在嵌套循环中不是只跳出直接包含它的那个循环吗,但这个为什么是break语句执行后直接跳出了整个大的循环那?

  • 写回答

2条回答 默认 最新

  • lzl2040 新星创作者: 人工智能技术领域 2022-10-15 08:49
    关注

    注意看下,这个break所在的for循环只有一层啊,所以直接跳出来了
    continue它是跳过本次循环,就是跳过本次循环中continue后的所有内容不执行,之后的循环是不会退出的

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 10月23日
  • 已采纳回答 10月15日
  • 创建了问题 10月15日