大家可以关注下我的微信公众号

break与continue的区别

技术文章 admin 1438℃ 0评论

在刚开始学习C语言里面的循环语句时,一直分不清break与continue有什么区别,当时老师对于这个知识点也没有详细讲解,只是一带而过。因此一直在这两个语句相当模糊,只是知道有这么回事而已。
今天下午闲着没事,就拿起一本编程书看了一下,刚好看到这两个语句,便记录下来,以备以后查看。
在C语言之父“丹尼斯·里奇”写的《C程序设计语言》中,对于break和continue语句的描述如下:

break语句可用于从for、while与do-while等循环中提前退出,就如同从switch语句中提前退出一样。break语句能使程序从switch语句或最内层循环中立即跳出。

continue语句与break语句是相关联的,但它没有break语句常用。continue语句用于for、while或do-while语句开始下一次循环的执行。在while与do-while语句中,continue语句的执行意味着立即执行测试部分;在for循环中,则意味着控制转移到递增循环变量部分。continue只用于循环语句,不用于switch语句。

对与这段话,小柒是这样理解的:
break语句的作用是:在循环体中执行到break语句时,将会立即跳出整个循环语句,执行循环语句后面的程序;
continue语句的作用是:在循环体中执行到continue语句时,将会终止本次循环并执行下一次循环,直到循环条件不再符合,才跳出整个循环。

为了便于理解,我们可以写一段简单的javascript来验证一下:

<html>

<head>

<title>break与continue的区别</title>

</head>

<body>

<script type=”text/javascript”>

for (i=0;i<10;i++){

if(i==3 || i==5 || i==8) continue;

document.write(i);    }

</script>

</body>

</html>
当执行这段代码时,页面应该输出的是 0124679 ;因为当i=3 、 i=5 或 i=8 时,循环体执行continue语句,终止本次循环,document.write(i); 并不会执行,因此并不会输出3、5、和8这几个数字。 其结果如下图所示:

11

当我们把上面代码中的continue语句改为break再执行一下,结果应该为 012 ,因为当i=3时,循环体执行break语句,跳出整个循环,所以3以后的循环都不会再执行。其结果如下图所示:

2

 

 

转载请注明:程序人生 » break与continue的区别

喜欢 (0)or分享 (0)