主要内容
我们先回顾一下 else if 的基本结构。本节课的内容将和它息息相关。
1. else if 结构
if(表达式 1)
{
// 执行语句 1 // 只有一条语句的话,大括号可以省略。
}
else if(表达式 2)
{
// 执行语句 2
}
else
{
// 执行语句 3
}
小练习:
Python 成绩达标或者 C++ 成绩达标,都可以获得“大师码编程之星”荣誉称号。
请编程,模拟判断,小明是否可以获奖。
请输入 1 或者 2,分别表示 “Python 成绩达标” 和 “C++ 成绩达标”。
// 请编程。完成后,查看后续示例程序。
示例程序:
#include < iostream >
using namespace std;
int main()
{
int input(0);
cout << "请输入 1 或者 2" << endl;
cin >> input;
if(input == 1)
cout << "大师码编程之星" << endl;
else if(input == 2)
cout << "大师码编程之星" << endl;
else
cout << "你还需要努力哦!" << endl;
return 0;
}
2. 逻辑关系“或”:有一个成立
我们来详细看一下上面的 if 结构。
if(input == 1) // 条件 1
{
cout << "大师码编程之星" << endl; // 语句 X,注意,和下面的一样。
}
else if(input == 2) // 条件 2
{
out << "大师码编程之星" << endl; // 语句 X,注意,和上面的一样。
}
请问:(选择题)
如果,我们希望执行“语句 X”,“条件表达式 1 ” 和 “条件表达式 2 ” 应该是什么关系?
A. “条件表达式 1 ” 和 “条件表达式 2 ” 都成立;
B. “条件表达式 1 ” 成立, “条件表达式 2 ” 不成立;
C. “条件表达式 1 ” 不成立, “条件表达式 2 ” 成立;
D. “条件表达式 1 ” 和 “条件表达式 2 ” 都不成立;
这里,应该是选择BCD;
还记得我们在数学中,怎么表达这样的关系吗?

上面的关系,在数学中被称为:
逻辑关系“或”。
| input |
1 |
0 |
2 |
| 不等式是否成立 |
成立 |
不成立 |
成立 |
3. 逻辑关系表达式
上面的数学不等式,在 C++ 可以表达为:
input == 1 || input == 2
C++ 中,使用 || 来表示 逻辑关系“或”;
符号 || 表示:判断“条件表达式 1 ” 和 “条件表达式 2 ” 是不是有一个成立;
这也是一种“表达式”,我们称之为“逻辑关系表达式”,逻辑关系“或” 是其中的一种;
【注意】判断相等,需要使用符号 ==;
上面的关系,可以再写作:
bool is_ok;
is_ok = input == 1 || input == 2;
is_ok = (input == 1) || (input == 2); // 可以有括号
“逻辑关系表达式”的取值说明:
bool is_ok = “条件表达式 1 ” || “条件表达式 2 ”
| 条件表达式 1 |
条件表达式 2 |
is_ok |
| true |
true |
true |
| false |
true |
true |
| true |
false |
true |
| false |
false |
false |
4. 逻辑关系“或”的辅助理解
逻辑关系“或”的理解1:
逻辑关系“或”的理解2:
逻辑关系“与”的理解3:
习题
课后练习