您的位置:首页 > 其它

关于多重循环与break的一点疑惑

2016-01-31 01:33 239 查看
今天在调试程序的时候,想到这样一个问题,我这是一个三重循环,在最内层循环摄者一个条件,如果满足则break,那么问题是break是只中断内层循环,三重循环都中断。


for()
for()
for()
{
if(满足条件)
break;
}


我写了这样一个程序来验证

#include<stdio.h>

int main()
{
int n = 0;
int i,j,k;
//打印每次中断的i,j,k的值
//如果break中断三种循环,则只会打印出0 0 5的结果
for(i = 0;i < 10;i ++ )
for(j = 0; j < 10 ; j ++)
for(k = 0;k < 10; k ++)
{
if(k == 5)
{
printf("%d  %d  %d\n",i,j,k);
break;
}

n ++;
}
printf("%d",n);
return 0;
}




事实证明,最内层的中断只会中断最内层循环。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: