C++ switch..case 语句
语法:
switch (expression) {
case constant1:
// 在以下情况下要执行的代码
// 表达式等于常量1;
break;
case constant2:
// 在以下情况下要执行的代码
// 表达式等于常量2;
break;
.
.
.
default:
// 在以下情况下要执行的代码
// 表达式与任何常量都不匹配
}
该表达式被评估一次,并与每个案例标签的值进行比较。
- 如果匹配,则执行匹配标签后的相应代码。例如变量的值等于constant2,则执行case constant2:之后的代码,直到遇到break语句。
- 如果不匹配,则执行 default: 之后的代码。
示例:
#include <iostream>
using namespace std;
int main() {
char oper;
float num1, num2;
cout << "输入一个操作符 (+, -, *, /): ";
cin >> oper;
cout << "输入两个数字: " << endl;
cin >> num1 >> num2;
switch (oper) {
case '+':
cout << num1 << " + " << num2 << " = " << num1 + num2;
break;
case '-':
cout << num1 << " - " << num2 << " = " << num1 - num2;
break;
case '*':
cout << num1 << " * " << num2 << " = " << num1 * num2;
break;
case '/':
cout << num1 << " / " << num2 << " = " << num1 / num2;
break;
default:
//运算符不匹配任何大小写常量 (+, -, *, /)
cout << "错误!运算符不正确";
break;
}
return 0;
}
结果:
在上面的程序中,使用 switch...case 语句来执行加法、减法、乘法和除法。
- 首先输入所需的运算符。此输入随后存储在名为 oper 的 char 变量中。
- 然后输入两个数字,它们存储在浮点变量 num1 和 num2 中。
- 然后使用 switch 语句检查输入的运算符:
- 如果输入 +,则对数字执行加法。
- 如果输入 -,则对数字执行减法。
- 如果输入 *,则对数字执行乘法。
- 如果输入 /,则对数字执行除法。
- 如果输入任何其他字符,则打印默认代码。
Note:每个 case 块中都使用了 break 语句。这将终止 switch 语句。如果不使用 break 语句,则执行正确 case 之后的所有 case。