跳至正文
View Categories

1 min read

主要内容 #

我们先回顾一下 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:
  • 习题 #

    课后练习