在循环中断开语句

时间:2014-10-11 11:26:09

标签: c

什么打破;在以下代码中执行?我基本上需要走出内循环,但继续外循环

for(i=0;i<n;i++)
{
    for(j=i;j<n;j++)
    {
        if(condition)   
        {   
          count++;
          break;
        }
    }

}

2 个答案:

答案 0 :(得分:4)

代码中的break将突破内部循环。然后外部循环继续(如果其中的条件为真),就像您想要的那样。请注意,breakif没有影响。它会突破像forwhile等循环,当它被放置在嵌套循环中时,它就会突破最内层循环。

答案 1 :(得分:0)

一旦程序遇到中断语句。它从内部 for循环退出,controll到达内部for循环的结尾

这里是一个例子

for(i=0;i<3;i++)
{
    for(j=1;j<3;j++)
    {
        if(i == j)   
        {   
          break;
        }
        printf("Inside the inner for loop \t i is : %d \t j is %d \n",i,j);
    }

    printf("Outside of the for loop \t i is : %d \t j is %d \n",i,j);
}

输出是:

Inside the inner for loop    i is : 0    j is 1 
Inside the inner for loop    i is : 0    j is 2 
Outside of the for loop      i is : 0    j is 3 
Outside of the for loop      i is : 1    j is 1 
Inside the inner for loop    i is : 2    j is 1 
Outside of the for loop      i is : 2    j is 2