break跳出循环,不再执行循环内的任何语句
continue执行下一次循环,执行for里面的增量表达式
一般做法是每一级循环定义一个额外的标志来决定循环是否退出,如:
bool bIsEnd = false;
while(!bIsEnd)
{
// 代码逻辑
// 内层循环
while(!bIsEnd)
{
if (...)
{
// break前改变退出标志
bIsEnd = true;
break;
}
}
}
会。
for(i=1;i<10;i++)
{
for(j=1;j<7;j++)
{
if(j==5)
{
continue;
}
printf("%d ", j);
}
printf("\n");
}
输出9行一模一样的1 2 3 4 6
会 continue 和 break的区别就是 continue只跳过当前循环 j==5时执行到continue j=6时还会急需执行
如果是break的话 就会直接跳过内层for循环 开始下一次外层的循环
执行到Continue的时候,会直接跳出内层循环,接着再次进入内层循环,直至内层循环的判断条件为false。接着执行外循环。