基于算法竞赛的c++编程(14)逻辑操作符

发布于:2025-06-10 ⋅ 阅读:(19) ⋅ 点赞:(0)

本节是逻辑操作符内容

在C++中,逻辑操作符用于组合或修改布尔表达式的结果。以下是常见的逻辑操作符及其用法:

逻辑与(&&)

当且仅当两个操作数都为 true 时,结果为 true,否则为 false

bool a = true;
bool b = false;
bool result = a && b; // result 为 false

逻辑或(||)

只要有一个操作数为 true,结果即为 true,否则为 false

bool a = true;
bool b = false;
bool result = a || b; // result 为 true

逻辑非(!)

用于反转操作数的逻辑状态(truefalsefalsetrue)。

bool a = true;
bool result = !a; // result 为 false

短路行为

C++ 的逻辑操作符具有短路行为:

  • &&:如果第一个操作数为 false,第二个操作数不会被计算。
  • ||:如果第一个操作数为 true,第二个操作数不会被计算。
int x = 5;
if (x > 0 && x < 10) { // 仅当 x > 0 为 true 时才检查 x < 10
    cout << "x is between 1 and 9." << endl;
}

示例代码

以下是一个完整示例,展示逻辑操作符的用法:

#include <iostream>
using namespace std;

int main() {
    bool a = true;
    bool b = false;

    cout << "a && b: " << (a && b) << endl;  // 输出 0 (false)
    cout << "a || b: " << (a || b) << endl;  // 输出 1 (true)
    cout << "!a: " << (!a) << endl;          // 输出 0 (false)

    int x = 5;
    if (x > 0 && x < 10) {
        cout << "x is valid." << endl;
    }

    return 0;
}

逻辑操作符常用于条件语句(如 ifwhile)中,帮助构建复杂的逻辑判断。

在C++中,逻辑操作符用于组合或修改布尔表达式的结果。以下是常见的逻辑操作符及其用法:

逻辑与(&&)

当且仅当两个操作数都为 true 时,结果为 true,否则为 false

bool a = true;
bool b = false;
bool result = a && b; // result 为 false

逻辑或(||)

只要有一个操作数为 true,结果即为 true,否则为 false

bool a = true;
bool b = false;
bool result = a || b; // result 为 true

逻辑非(!)

用于反转操作数的逻辑状态(truefalsefalsetrue)。

bool a = true;
bool result = !a; // result 为 false

短路行为

C++ 的逻辑操作符具有短路行为:

  • &&:如果第一个操作数为 false,第二个操作数不会被计算。
  • ||:如果第一个操作数为 true,第二个操作数不会被计算。
int x = 5;
if (x > 0 && x < 10) { // 仅当 x > 0 为 true 时才检查 x < 10
    cout << "x is between 1 and 9." << endl;
}

示例代码

以下是一个完整示例,展示逻辑操作符的用法:

#include <iostream>
using namespace std;

int main() {
    bool a = true;
    bool b = false;

    cout << "a && b: " << (a && b) << endl;  // 输出 0 (false)
    cout << "a || b: " << (a || b) << endl;  // 输出 1 (true)
    cout << "!a: " << (!a) << endl;          // 输出 0 (false)

    int x = 5;
    if (x > 0 && x < 10) {
        cout << "x is valid." << endl;
    }

    return 0;
}

逻辑操作符常用于条件语句(如 ifwhile)中,帮助构建复杂的逻辑判断。