【发布时间】:2012-03-30 13:18:28
【问题描述】:
如果我使用break 语句,它只会中断内部循环,我需要使用一些标志来中断外部循环。但是如果嵌套循环很多,代码就不好看了。
还有其他方法可以打破所有循环吗? (请不要使用goto stmt。)
for(int i = 0; i < 1000; i++) {
for(int j = 0; j < 1000; j++) {
if(condition) {
// both of the loops need to break and control will go to stmt2
}
}
}
stmt2
【问题讨论】:
-
你可以在循环开始之前尝试 int i 和 int j ,然后在条件下将它们设为 1001 循环不会迭代下一个。
-
我有一位教授最讨厌的是你不能发送一个参数来打破,以表明你可以去多少级。如果他有他的方式,你的问题的答案就是“break(2);”,其中“2”是要跳出的循环数。
标签: c nested-loops break