黑马程序员技术交流社区

标题: break和continue的区别 [打印本页]

作者: Holmes    时间: 2015-7-25 11:40
标题: break和continue的区别
最近看到循环语句,关于break和continue的用法和区别有点不是很明白,求大神指点。。。
作者: lizf2010    时间: 2015-7-25 18:20
break是结束整个循环
continue是跳出此轮循环,继续进行下一轮循环
作者: 一城一世界    时间: 2015-7-25 18:26
break是结束循环,还可以用作选择语句中,contiue是结束当前循环,继续下次循环。
作者: yuchun    时间: 2015-7-25 18:40
请看下面两个示例
例1 break
int main(void)
{
char c;
int i;

for(i=1;i<10;i++)    //i<10循环继续的条件
  {c=getchar();
   if(c=='\n');      //终止条件
   break;           //break前面一定要有个判断条件,当条件满足,跳出循环(如果在内循环内只能跳出内循环,而不能跳出外循环)
   putchar(c);
   }
}
输入 aaa回车aaaa回车aaa

结果 aaa

例2 continue
int main(void)
{
char c;
int i;

for(i=1;i<10;i++)    //i<10循环继续的条件
  {c=getchar();
   if(c=='\n');      //终止条件
   continue;         //continue只是满足条件后面的语句不执行,重新判断表达式
   putchar(c);
   }
}

同样输入 aaa回车aaaa回车aaa
结果是   aaaaaaaa
分析:
因为条件i<10所以 getchar(c)肯定是要输入10个字符(包括换行符),前面输入aaa都没问题当输入“回车”时getchar也完全可以认可这个字符是合法的,但是后面有个if(c=='\n')conrinue,意思是当 输入的字符是回车那么就把continue后面的语句不执行,后面是什么呢,putchar输出,所以我们只能看到aaa,回车被屏蔽了,注意虽然回车被屏蔽,但是实际上他依然算被执行一次,以此类推 最后的结果就是  aaaaaaaa 因为中间有2个回车字符    如果没有continue呢  结果是  aaa aaaa a 此时回车会明显的显示出来
作者: zhi4578120    时间: 2015-7-25 19:01
break,用于跳出循环,也就是循环结束。
continue是终止本次循环,直接进行下次循环。建议多看视频
作者: 潘小珠    时间: 2015-7-25 19:11
break能用在选择和循环结构中,而continue只能用在循环结构中。
break只跳出当前所在循环,continue结束本次循环,继续下次循环。
作者: maizi1912    时间: 2015-7-25 19:15
一个是跳出整个循环   一个是当前循环
作者: 水佳伟    时间: 2015-7-25 20:36
前者跳出整个循环,后者跳出本次循环,继续下次循环
作者: Matrix_heima    时间: 2015-7-25 21:07
break,满足条件时终止循环;continue,满足条件时,结束当前循环,进入下一次循环。

作者: libin    时间: 2015-7-25 21:12
其实很简单,continue在英文里面是继续的意思,用在java的循环里面是继续下一次循环的意思,在循环体里,如果执行到continue,后面的语句就不会执行,直接进入到下一次循环,去执行判断语句。而break有破罐子破摔的意思,就是说它会跳出循环,整个循环都不会再执行了。
作者: 小p    时间: 2015-7-25 21:40
都是正解。。。。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2