5. 条件语句——编程世界的“决策大师”
5.1 为什么需要条件语句
在生活中,我们常常需要根据不同的情况做出不同的决策。比如,如果今天下雨,我们就带伞出门;如果考试成绩达到 90 分以上,就可以得到一份奖励。在编程里,条件语句的作用就和生活中的决策过程类似,它能让程序根据不同的条件执行不同的代码块,让程序变得更加灵活和智能。
5.2 if 语句
基本语法 if 语句是最基本的条件语句,它的基本语法如下:
if (条件表达式) { // 当条件表达式为 true 时执行的代码块 }
其中,条件表达式是一个布尔表达式,它的值要么是 true
,要么是 false
。如果条件表达式的值为 true
,就会执行花括号里的代码块;如果为 false
,则跳过该代码块。
示例代码
#include <iostream> using namespace std; int main() { int age; cout << "请输入你的年龄: "; cin >> age; if (age >= 18) { cout << "你已经成年了,可以独立承担一些责任啦!" << endl; } return 0; }
在这个程序中,首先让用户输入年龄,然后判断年龄是否大于等于 18。如果是,就输出相应的提示信息;如果不是,就不执行 if 语句里的代码块。
5.3 if – else 语句
基本语法 if – else 语句在 if 语句的基础上增加了一个 else 分支,当条件表达式为 false
时,会执行 else 分支里的代码块。其基本语法如下:
if (条件表达式) { // 当条件表达式为 true 时执行的代码块 } else { // 当条件表达式为 false 时执行的代码块 }
示例代码
#include <iostream> using namespace std; int main() { int score; cout << "请输入你的考试成绩: "; cin >> score; if (score >= 60) { cout << "恭喜你,考试及格啦!" << endl; } else { cout << "很遗憾,考试不及格,继续加油哦!" << endl; } return 0; }
在这个程序中,根据用户输入的考试成绩判断是否及格。如果成绩大于等于 60 分,输出及格的提示信息;否则,输出不及格的提示信息。
5.4 if – else if – else 语句
基本语法 当需要判断多种情况时,可以使用 if – else if – else 语句。它可以有多个 else if 分支,依次判断每个条件表达式,一旦某个条件表达式为 true
,就执行对应的代码块,然后跳过后面的所有分支。如果所有条件表达式都为 false
,则执行 else 分支里的代码块。其基本语法如下:
if (条件表达式 1) { // 当条件表达式 1 为 true 时执行的代码块 } else if (条件表达式 2) { // 当条件表达式 2 为 true 时执行的代码块 } // 可以有多个 else if 分支 else { // 当所有条件表达式都为 false 时执行的代码块 }
示例代码
#include <iostream> using namespace std; int main() { int score; cout << "请输入你的考试成绩: "; cin >> score; if (score >= 90) { cout << "你的成绩非常优秀,继续保持!" << endl; } else if (score >= 80) { cout << "你的成绩良好,表现不错!" << endl; } else if (score >= 60) { cout << "你的成绩及格了,还有进步空间!" << endl; } else { cout << "很遗憾,你的成绩不及格,要加油努力啦!" << endl; } return 0; }
在这个程序中,根据用户输入的考试成绩,将成绩分为不同的等级,并输出相应的评价信息。
5.5 嵌套 if 语句
在一个 if 语句的代码块里还可以再嵌套另一个 if 语句,这就是嵌套 if 语句。它可以用来处理更复杂的条件判断。
示例代码
#include <iostream> using namespace std; int main() { int age; char gender; cout << "请输入你的年龄: "; cin >> age; cout << "请输入你的性别 (M 表示男性,F 表示女性): "; cin >> gender; if (age >= 18) { if (gender == 'M') { cout << "你是成年男性,可以参军啦!" << endl; } else if (gender == 'F') { cout << "你是成年女性,也可以为国家贡献自己的力量!" << endl; } else { cout << "输入的性别信息有误。" << endl; } } else { cout << "你还未成年,要好好学习,将来报效祖国!" << endl; } return 0; }
在这个程序中,首先判断年龄是否成年,然后在成年的情况下,再根据性别输出不同的提示信息。
5.6 课后小练习
- 编写一个程序,输入一个整数,判断它是正数、负数还是零,并输出相应的结果。
- 编写一个程序,根据输入的月份,判断该月份所在的季节(春季:3 – 5 月;夏季:6 – 8 月;秋季:9 – 11 月;冬季:12 月、1 月、2 月),并输出对应的季节名称。
通过这部分的学习,你已经掌握了 C++ 中的条件语句,它们能让你的程序根据不同的情况做出不同的决策,大大增强了程序的实用性和灵活性。