A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© Holmes 中级黑马   /  2015-7-25 11:40  /  410 人查看  /  10 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

最近看到循环语句,关于break和continue的用法和区别有点不是很明白,求大神指点。。。

10 个回复

倒序浏览
break是结束整个循环
continue是跳出此轮循环,继续进行下一轮循环
回复 使用道具 举报
一城一世界 来自手机 中级黑马 2015-7-25 18:26:21
藤椅
break是结束循环,还可以用作选择语句中,contiue是结束当前循环,继续下次循环。
回复 使用道具 举报
请看下面两个示例
例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 此时回车会明显的显示出来
回复 使用道具 举报
break,用于跳出循环,也就是循环结束。
continue是终止本次循环,直接进行下次循环。建议多看视频
回复 使用道具 举报
break能用在选择和循环结构中,而continue只能用在循环结构中。
break只跳出当前所在循环,continue结束本次循环,继续下次循环。
回复 使用道具 举报
一个是跳出整个循环   一个是当前循环
回复 使用道具 举报
前者跳出整个循环,后者跳出本次循环,继续下次循环
回复 使用道具 举报
break,满足条件时终止循环;continue,满足条件时,结束当前循环,进入下一次循环。
回复 使用道具 举报
libin 中级黑马 2015-7-25 21:12:09
10#
其实很简单,continue在英文里面是继续的意思,用在java的循环里面是继续下一次循环的意思,在循环体里,如果执行到continue,后面的语句就不会执行,直接进入到下一次循环,去执行判断语句。而break有破罐子破摔的意思,就是说它会跳出循环,整个循环都不会再执行了。
回复 使用道具 举报
小p 中级黑马 2015-7-25 21:40:43
11#
都是正解。。。。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马