C或C ++中的break是一个循环控制语句,用于终止循环。一旦从循环中遇到break语句,循环迭代便在那里停止,控制权立即从循环返回到循环后的第一个语句。
基本上,在无法确定循环的实际迭代次数或要基于某种条件终止循环的情况下,会使用break语句
![25dd7510688fe46d5da0706121444358.gif](https://i-blog.csdnimg.cn/blog_migrate/d63cc05aff9caa92e222293eb459f4d1.gif)
我们将在这里看到带有三种不同类型循环的break语句的用法:
- 简单循环
- 嵌套循环
- 无限循环
现在让我们使用break语句查看上述三种循环类型的示例。
- 简单循环:考虑一下我们要搜索数组中元素的情况。为此,请使用循环从第一个索引开始遍历数组,并将数组元素与给定键进行比较。
以下是此想法的实现:
C:
![5572721a866fb82821a8daff648c87c8.png](https://i-blog.csdnimg.cn/blog_migrate/c6f4c1356df9b5dcb4f8f5ad58f60ebe.jpeg)
C++:
![09196de66dfb569f4466bdef1ce9d3c6.png](https://i-blog.csdnimg.cn/blog_migrate/e1774d573124c2c1beafd17524fd07c6.jpeg)
上面的代码运行正常,没有错误。但是上面的代码效率不高。上面的代码甚至在找到元素之后也完成了所有迭代。假设数组中有1000个元素,并且要搜索的键位于第一个位置,则上述方法将执行999次无用的迭代。
为了避免这些无用的迭代,我们可以在程序中使用break语句。遇到break语句后,满足条件后立即返回循环控件。因此将使用带有if条件的break语句,该条件将键与数组元素进行比较,如下所示:
C:
![f7a939e429b4a3a68da45dadcbeb9046.png](https://i-blog.csdnimg.cn/blog_migrate/5efa2ab4496311191746ef244ffec140.jpeg)
C++:
![56968bf0d69ff01496704577d0373eee.png](https://i-blog.csdnimg.cn/blog_migrate/34bfdaf159af2367338fbe5859a3a439.jpeg)
2.嵌套循环:在嵌套循环中,我们还可以使用break语句。如果在最里面的循环中使用了break语句。该控件将仅从最内部的循环中出来。下面是使用带有嵌套循环的break的示例:
C:
![f3bb20f9a47bcf2162fe227d9b8da46d.png](https://i-blog.csdnimg.cn/blog_migrate/cc3d3d1b3597283ffac542075198bf67.jpeg)
C++:
![d6fc959e9bbbd1bbc17c962902bf6b57.png](https://i-blog.csdnimg.cn/blog_migrate/669600655ff44d3767afa44e8d939b49.jpeg)
在上面的代码中,我们可以清楚地看到将内部循环编程为执行10次迭代。但是,一旦j的值变得大于3,内部循环就会停止执行,这将内部循环的迭代次数限制为仅3次迭代。但是,外循环的迭代不受影响。
- 无限循环:break语句可以包含在具有条件的无限循环中,以终止无限循环的执行。
考虑下面的无限循环:
C:
![71d0bca8c4cd6c761568d277005b86d9.png](https://i-blog.csdnimg.cn/blog_migrate/9f3c3af480a78bad845fb930270ddd2e.jpeg)
C++:
![2bad66b5cfb9ab77fb7c925b1d699807.png](https://i-blog.csdnimg.cn/blog_migrate/736b8a175c5c5137d4aada8bf2cfb7cf.jpeg)
注意:请不要在编译器中运行上述程序,因为它是一个无限循环,因此您可能必须强行退出编译器以终止该程序。
在以上程序中,循环终止所基于的循环条件始终为真。因此,循环执行了无数次。我们可以使用break语句来更正此问题,如下所示:
C:
![c339a7e8ff9cc2359f875f19f859f5fd.png](https://i-blog.csdnimg.cn/blog_migrate/8098d879413ecfbe4f343742298eb021.jpeg)
C++:
![32740c27138c0d2fd037a5de338f264b.png](https://i-blog.csdnimg.cn/blog_migrate/2b773d2fe5180dbc2e2fd73a36b0cc81.jpeg)
上面的代码将循环迭代次数限制为10。
免费领取学习资料以及教程,可以私信回复编程或者点击下方了解更多链接: