首页 > 编程笔记 > C++笔记 阅读:2

C++逻辑运算符的用法(附带实例)

逻辑运算符可根据表达式的真、假属性返回真值或假值。C++ 中,表达式的值非 0,表示其值为真。非 0 的值参与逻辑运算,等价于 1;假值总是为 0。

C++逻辑运算符

逻辑运算符可对真和假两种逻辑值进行运算,运算后的结果仍是一个逻辑值。逻辑运算符有 3 个,分别是逻辑与、逻辑或和逻辑非,如下表所示。

表:逻辑运算符
运算符 功能 数目 用法 说明
&& 逻辑与 双目 expr1 && expr2 两个表达式都为真时,逻辑运算结果为真
|| 逻辑或 双目 expr1 || expr2 两个表达式只要有一个为真,逻辑运算结果为真
! 逻辑非 单目 !expr 表达式为真,逻辑运算结果为假

逻辑运算中,非 0 代表真,0 代表假。逻辑运算后,会返回一个结果,1 代表真,0 代表假。逻辑运算过程如下表所示。

表:逻辑运算过程
expr1 expr2 expr1 && expr2 expr1 || expr2 !expr1 !expr2
0 0 0 0 1 1
0 非 0 0 1 1 0
非 0 0 0 1 0 1
非 0 非 0 1 1 0 0

逻辑运算可以嵌套,当存在多个逻辑运算符时,其结合性为自左向右。例如,(A||B)&&C 等同于 A||B&&C,即先对 A 和 B 进行逻辑或运算,得到的结果再与 C 进行逻辑与运算。

C++逻辑表达式

逻辑表达式的值也是逻辑型,只能取真或假。其一般形式如下:

表达式1 逻辑运算符 表达式2

使用逻辑运算符,可以将多个关系表达式的结果合并在一起进行判断。逻辑表达式的值则是各种逻辑运算的最后值。

使用逻辑表达式的注意事项如下:
【实例】某模特公司要求应聘者的年龄在 20~30 岁之间。假设有一名应聘者,年龄为 32 岁,判断他是否满足应聘要求。代码如下:
#include <iostream>
using namespace std;
int main()
{
    int age = 32;
    if(20<= age && age <= 30)  // if 语句中使用逻辑与表达式,判断应聘者年龄是否在 20~30 岁之间
    {
        cout << age << "岁,满足招聘要求" << endl;
    }
    else
    {
        cout << age << "岁,不满足招聘要求" << endl;
    }
    return 0;
}
程序运行结果为:

32岁,不满足招聘要求

相关文章