一、循环体内使用break
在循环体内使用break语句可以终止循环语句的执行,跳出循环。例如,我们可以编写一个while循环,让用户输入数字,直到输入0为止:
#include <iostream>
using namespace std;
int main() {
int num;
while (true) {
cout << "请输入一个数字:";
cin >> num;
if (num == 0) {
break;
}
}
cout << "程序结束!" << endl;
return 0;
}
上述代码中,当用户输入0时,break语句将会终止while循环,程序将执行后续代码并输出“程序结束!”。
二、嵌套循环使用break
在嵌套循环中使用break语句可以终止内层循环的执行,跳出内层循环。例如,我们可以编写一个双重for循环,输出九九乘法表中小于10的部分:
#include <iostream>
using namespace std;
int main() {
for (int i = 1; i <= 9; i++) {
for (int j = 1; j <= i; j++) {
cout << i << "*" << j << "=" << i * j << "\t";
if (j == 9) {
break;
}
}
cout << endl;
}
return 0;
}
上述代码中,当内层循环的j等于9时,break语句将会终止内层循环的执行,程序将继续执行外层循环并输出换行符,从而实现九九乘法表的输出。
三、在switch语句中使用break
在switch语句中使用break语句可以强制终止switch语句的执行,跳出switch语句。例如,我们可以编写一个switch语句,根据用户输入的数字输出相应的月份:
#include <iostream>
using namespace std;
int main() {
int month;
cout << "请输入一个数字(1-12)表示月份:";
cin >> month;
switch (month) {
case 1:
cout << "一月" << endl;
break;
case 2:
cout << "二月" << endl;
break;
case 3:
cout << "三月" << endl;
break;
case 4:
cout << "四月" << endl;
break;
case 5:
cout << "五月" << endl;
break;
case 6:
cout << "六月" << endl;
break;
case 7:
cout << "七月" << endl;
break;
case 8:
cout << "八月" << endl;
break;
case 9:
cout << "九月" << endl;
break;
case 10:
cout << "十月" << endl;
break;
case 11:
cout << "十一月" << endl;
break;
case 12:
cout << "十二月" << endl;
break;
default:
cout << "无效的月份" << endl;
break;
}
return 0;
}
上述代码中,当用户输入的数字不在表示月份的范围内时,default标签中的代码将会被执行,并且break语句将会终止switch语句的执行。
四、在函数中使用break
在函数中使用break语句可以终止函数的执行,跳出函数。例如,我们可以编写一个函数,计算斐波那契数列中第n项的值:
#include <iostream>
using namespace std;
int fib(int n) {
int a = 0, b = 1, c = 1;
if (n < 1) {
cout << "无效的参数" << endl;
return 0;
}
if (n == 1 || n == 2) {
return 1;
}
for (int i = 3; i <= n; i++) {
c = a + b;
a = b;
b = c;
if (c > 100) {
break;
}
}
return c;
}
int main() {
int n;
cout << "请输入一个正整数n:";
cin >> n;
cout << "斐波那契数列中第" << n << "项的值是:" << fib(n) << endl;
return 0;
}
上述代码中,当计算的斐波那契数列中某一项的值超过100时,break语句将会终止for循环的执行,函数将会直接返回c的值。