学习目标:
- 理解程序的分支逻辑(根据不同条件执行不同代码)。
- 掌握
if-else和switch语句的用法。 - 能编写简单的条件判断程序(如成绩评级、游戏选项等)。

1 条件语句的基本概念
什么是条件语句?
- 程序在执行时,有时需要根据不同的情况做出不同的操作。
- 条件语句就是让计算机“做选择”的代码结构。
核心结构:
if (条件) {
// 条件成立时执行的代码
} else {
// 条件不成立时执行的代码
}
类比生活:
- 就像“如果今天下雨,就带伞;否则,就不带伞”。
2 if-else 语句
基本语法
if (条件) {
// 条件成立时执行
} else {
// 条件不成立时执行
}
示例1:判断成绩是否及格
int score = 75;
if (score >= 60) {
cout << "及格!";
} else {
cout << "不及格!";
}
运行结果:
及格!
多条件判断(else if)
if (条件1) {
// 条件1成立时执行
} else if (条件2) {
// 条件2成立时执行
} else {
// 其他情况执行
}
示例2:成绩等级转换(A/B/C/D/E)
int score = 85;
if (score >= 90) {
cout << "A";
} else if (score >= 80) {
cout << "B";
} else if (score >= 70) {
cout << "C";
} else if (score >= 60) {
cout << "D";
} else {
cout << "E";
}
运行结果:
B
嵌套 if 语句
- 在
if或else里再写if语句。
示例3:判断三角形类型
int a = 3, b = 4, c = 5;
if (a + b > c && a + c > b && b + c > a) {
if (a == b && b == c) {
cout << "等边三角形";
} else if (a == b || b == c || a == c) {
cout << "等腰三角形";
} else {
cout << "普通三角形";
}
} else {
cout << "不能构成三角形";
}
运行结果:
普通三角形
3 switch 语句
基本语法
- 适用于多个固定选项的判断(如菜单选择、星期几等)。
switch (变量) {
case 值1:
// 代码1
break;
case 值2:
// 代码2
break;
default:
// 默认情况
}
示例4:模拟计算器菜单
cout << "1.加法\n2.减法\n3.退出\n请选择:";
int choice;
cin >> choice;
switch (choice) {
case 1:
cout << "执行加法";
break;
case 2:
cout << "执行减法";
break;
case 3:
cout << "退出程序";
break;
default:
cout << "输入错误!";
}
运行示例:
1.加法
2.减法
3.退出
请选择:2
执行减法
switch 与 if 的区别
| 特点 | if-else | switch |
|---|---|---|
| 适用场景 | 范围判断(如 score > 60) | 固定值匹配(如 case 1:) |
| 可读性 | 适合复杂条件 | 适合多个选项 |
| 效率 | 逐条判断 | 直接跳转(更快) |
4 常见错误 & 调试技巧
易错点
- **忘记写
==,误用 **=if (x = 5)❌(赋值,永远为真)if (x == 5)✅(比较)
switch** 漏写 **break- 会导致“穿透”执行多个
case。
- 会导致“穿透”执行多个
- 逻辑运算符错误
if (a < b < c)❌(错误写法)if (a < b && b < c)✅(正确写法)
调试技巧
- 使用
cout打印变量的值,检查条件是否按预期执行。 - 用注释
//暂时屏蔽部分代码,逐步排查问题。
5 练习与挑战
基础练习
- 编写程序,判断一个数是奇数还是偶数。
- 输入月份(1-12),输出对应的季节(春/夏/秋/冬)。
进阶挑战
- 实现一个“BMI 计算器”,根据身高体重判断胖瘦等级。
- 设计一个“简易ATM机”,用
switch实现存款、取款、查询功能。
总结
| 知识点 | 关键内容 |
|---|---|
| if-else | 用于条件分支,支持多级判断(else if)。 |
| switch | 适用于固定选项匹配,比 if 更清晰。 |
| 常见错误 | = vs ==、break 遗漏、逻辑错误。 |
| 应用场景 | 游戏选项、成绩评级、菜单交互等。 |



















