编程中的分支结构是一种控制结构,它允许程序根据特定条件选择性地执行不同的代码块。以下是一些常见的分支结构及其操作方法:
单分支结构
使用 `if` 语句,只有一个条件判断。
语法示例:
```cpp
if (条件表达式) {
// 条件为真时执行的代码块
}
```
例如,判断一个数是否为正数:
```cpp
int n;
cin >> n;
if (n > 0) {
cout<< n << "是正数" << endl;
}
```
双分支结构
使用 `if...else` 语句,有两个条件判断。
语法示例:
```cpp
if (条件表达式1) {
// 条件1为真时执行的代码块
} else {
// 条件1为假时执行的代码块
}
```
例如,判断一个数是否为正数或负数:
```cpp
int n;
cin >> n;
if (n > 0) {
cout<< n << "是正数" << endl;
} else if (n < 0) {
cout<< n << "是负数" << endl;
} else {
cout<< n << "是零" << endl;
}
```
嵌套分支结构
在双分支或单分支结构中,可以嵌套另一个 `if...else` 语句。
语法示例:
```cpp
if (条件表达式1) {
if (条件表达式2) {
// 条件1和条件2都为真时执行的代码块
} else {
// 条件1为真,条件2为假时执行的代码块
}
} else {
// 条件1为假时执行的代码块
}
```
例如,判断一个数是否在1到10之间:
```cpp
int n;
cin >> n;
if (n >= 1 && n <= 10) {
cout<< n << "在1到10之间" << endl;
} else {
cout<< n << "不在1到10之间" << endl;
}
```
多分支结构
使用多个 `if...else if...else` 语句,处理多个条件。
语法示例:
```cpp
if (条件表达式1) {
// 条件1为真时执行的代码块
} else if (条件表达式2) {
// 条件2为真时执行的代码块
} else if (条件表达式3) {
// 条件3为真时执行的代码块
} else {
// 所有条件都不满足时执行的代码块
}
```
例如,判断一个数属于哪个象限:
```cpp
int x, y;
cin >> x >> y;
if (x > 0 && y > 0) {
cout << "第一象限" << endl;
} else if (x < 0 && y > 0) {
cout << "第二象限" << endl;
} else if (x < 0 && y < 0) {
cout << "第三象限" << endl;
} else if (x > 0 && y < 0) {
cout << "第四象限" << endl;
} else {
cout << "坐标轴上" << endl;
}
```
switch 语句
根据一个表达式的值选择多个执行路径。
语法示例:
```cpp
switch (表达式) {
case 值1:
// 表达式等于值1时执行的代码块
break;
case 值2:
// 表达式等于值2时执行的代码块
break;
default:
// 表达式不等于任何一个case的值时执行的代码块
}
```
例如,根据用户输入的月份输出不同的月份名称: