导言:
本文主要讲解在C++中,如何更改程序流程。
在C++中,更改程序流程的语句有break和continue语句。
一,break。
break语句用于强制终止流程,跳出程序块的语句,语法如下:
break;
1,在for循环内使用。
将break语句添加到下列代码中,可在到达指定次数的·情况下终止循环。
#include <iostream>
#include <string>
using namespace std;
int main() {
int a, b;//a为循环次数,b为终止循环次数
cout<<"在第几次终止循环:";
cin>>b;//输入终止循环次数
for (int a = 1; a >0; a++)//循环次数从1开始,本身是无限循环。
{
cout<<"第"<<a<<"次循环"<<endl;//输出循环次数
if (a==b){//如果循环次数等于终止循环次数
break;}//终止循环
}
return 0;
}
运行结果为:
使用break语句可以跳出当前程序块并强行终止循环处理。
2,在switch语句中使用。
在switch语句的语法中,就使用了break语句,
#include <iostream>
#include <string>
using namespace std;
int main() {
double a,b,d;//定义变量a,b用于存储所输入的四则运算的两位数。
char c;//定义变量c用于存储所输入的四则运算符。
cout << "请输入一个四则运算表达式(例如:1 + 2):";
cin >> a >> c >> b;//获取输入四则运算表达式,并赋值给相关变量。
switch(c) {
case '+':
d = a + b;
break;//当c为+时,执行a+b,并将结果赋值给d。
case '-':
d = a - b;
break;//当c为-时,执行a-b,并将结果赋值给d。
case '*':
d = a * b;
break;//当c为*时,执行a*b,并将结果赋值给d。
case '/':
if (b == 0) {
cout << "除数不能为0!" << endl;
return 0; //当b为0时,输出错误信息并结束程序。
}
d = a / b;
break;//当c为/时,执行a/b,并将结果赋值给d。
default:
cout << "输入错误!" << endl;//当c不是四则运算符时,输出错误信息并结束程序。
}
}
在此不再赘述。
二,continue语句。
continue语句也可以强制更改程序流程,它的作用是使程序跳出循环处理,执行下一次循环的语句。
例如:
#include <iostream>
#include <string>
using namespace std;
int main()
{
int a,b;//循环次数和跳出次数
cout<<"循环中次数:";
cin>>a;//循环次数
cout<<"跳出第几次循环:";
cin>>b;//在第几次循环跳出
for(int i=1;i<=a;i++){
if(i==b){
continue;//在第b次循环跳出
}
cout<<"第"<<i<<"次循环"<<endl;//输出第i次循环
}
}
运行结果为:
可以看到,第四次循环直接跳出,并没有被打印。
想要跳出循环中的语句,直接执行下次循环,就可以使用continue语句。