一、if 语句: C++ 中最基础的条件控制语句,用于根据条件判断执行不同的代码块。
-
单条件
if (条件表达式) {
// 条件为真时执行的代码
}
示例:
int age = 20;
if (age >= 18) {
cout << “You are an adult.” << endl;
} -
if-else 结构
if (条件表达式) {
// 条件为真时执行的代码
} else {
// 条件为假时执行的代码
}
示例:
int age = 20;
if age >= 18) {
cout << “You are an adult.” << endl;
} else {
cout << “You are a minor.” << endl;
} -
if-else if-else 多分支结构
if (条件1) {
// 条件1为真时执行
} else if (条件2) {
// 条件2为真时执行
} else {
// 所有条件都为假时执行
}
示例:
int grade = 75;
if (grade >= 90) {
cout << “A” << endl;
} else if (grade >= 80) {
cout << “B” << endl;
} else if (grade >= 70) {
cout << “C” << endl;
} else if (grade >= 60) {
cout << “D” << endl;
} else {
cout << “F” << endl;
}
二、switch语句:是一种多分支选择结构,用于根据表达式的值选择执行不同的代码块。它比多个 if-else 语句更清晰、高效。
switch (表达式) {
case constant1:
// 代码块1
break;
case constant2:
// 代码块2
break;
…
default:
// 默认代码块
}
说明:
1、表达式必须是整型或枚举类型
2、case 后面的值必须是常量表达式
3、break 语句用于退出 switch 结构,若省略会继续执行下一个 case(称为"case穿透")
4、default 分支是可选的,处理未匹配的情况
示例:
char grade = ‘B’;
switch (grade) {
case ‘A’:
case ‘B’:
cout << “Well done!” << endl;
break;
case ‘C’:
cout << “Good” << endl;
break;
case ‘D’:
cout << “Pass” << endl;
break;
default:
cout << “Invalid grade” << endl;
}
三、多层条件语句
在 C++ 中,多层条件语句指的是在一个条件语句内部嵌套另一个(或多个)条件语句,用于处理更复杂的判断逻辑。常见的形式是在 if 语句内部再包含 if 或 else if 语句,或者是if 语句内部包含switch语句。
1、嵌套if-else语句
if (condition1) {
// 条件1为真时执行的代码
if (condition2) {
// 条件1和条件2都为真时执行的代码
} else {
// 条件1为真但条件2为假时执行的代码
}
} else {
// 条件1为假时执行的代码
}
2、else-if阶梯结构
if (condition1) {
// 条件1为真时执行的代码
} else if (condition2) {
// 条件1为假且条件2为真时执行的代码
} else if (condition3) {
// 条件1和2为假且条件3为真时执行的代码
} else {
// 所有条件都为假时执行的代码
}
3、混合嵌套结构
if (condition1) {
if (condition2) {
// 条件1和2为真
} else if (condition3) {
// 条件1为真,条件2为假,条件3为真
} else {
// 条件1为真,条件2和3为假
}
} else if (condition4) {
// 条件1为假,条件4为真
} else {
// 所有条件都为假
}
注意事项
条件表达式应该按照从最严格到最宽松的顺序排列
注意大括号的使用,避免"悬空else"问题
深层嵌套会降低代码可读性,应考虑重构或使用其他结构
switch-case中的break语句不能省略(除非有意为之)
可以使用逻辑运算符(&&, ||, !)来简化多层条件
多层条件语句是编程中控制流程的重要工具,合理使用可以使代码逻辑清晰,但过度嵌套会使代码难以维护。

1967

被折叠的 条评论
为什么被折叠?



