Logo

郎哥编程

第19讲:逻辑运算符

2026-03-04 20

逻辑运算符用于连接两个条件表达式或布尔类型的变量,用于执行多个判断。在数学中,表示一个数值的范围时,经常用不等式来表述。例如:假设一个数值取值范围为0到100,设该数值为x,不等式0<x<100给出了x的取值范围,在Java程序语言中,逻辑运算符可以实现类似数学中的不等式。下表列出了C语言支持的逻辑运算符,表中假设整型变量A为真(数值为1),整型变量B为假(数值为0)。

1 逻辑运算符

运算符

描述

例子

&&

称为逻辑与运算符。当且仅当两个操作数都为真,条件才为真

A && B)为假

 

||

称为逻辑或操作符。如果任何两个操作数任何一个为真,条件为真

A || B)为真

称为逻辑非运算符。用来反转操作数的逻辑状态。如果条件为true,则逻辑非运算符将得到false

!(A && B)为真

逻辑与运算符“&&”,用于判断运算符两边的条件表达式或布尔变量是否同为真,如果同为真,返回结果为1(真),否则返回0(假)。例如下面语句:

int   a = 10;
int   b = 20;
int   c = 15;
int  bJudge =  c > a && c < b;

声明了变量a、变量b、变量c,变量a和变量分别赋值为10和20,变量c赋值为15。第四条语句逻辑与运算符“&&”连接了2个条件表达式,分别是c > a和c < b,如果这两个表达式计算结果都为真,则bJudge为1(真),否则bJudge为0(假)。此时bJudge的值为1(真)。该运算符还有一个特点,当左侧的条件表达式或变量为0(假)时,则直接返回结果1(假),不再执行运算符右侧的表达式。

逻辑或运算符“||”,用于判断运算符两边的条件表达式或整型变量是否有一个为真,如果有一个为真,返回结果为1(真),否则返回0(假)。例如下面语句:

int   a = 10;
int   b = 20;
int   c = 15;
int  bJudge =  c > a || c < b;

声明了变量a、变量b、变量c,变量a和变量分别赋值为10和20,变量c赋值为15。第四条语句逻辑或运算符“||”连接了2个条件表达式,分别是c > a和c < b,这两个表达式计算结果任何一个为1(真)时,则bJudge为真,否则bJudge为0(假)。此时bJudge的值为1(真)。

逻辑非运算符“!”,用于判断运算符两边的条件表达式或整型变量是否有一个为1(真),如果有一个为1(真),返回结果为1(真),否则返回0(假)。例如下面语句:

int   a = 10;
int   b = 20;
int  bJudge =  !( a> b);

声明了变量a、变量b,变量a和变量分别赋值为10和20。第三条语句逻辑非运算符“!”用于取反条件表达式a> b的结果,如果a> b为1(真),取反后为0(假),如果a> b为0(假),取反后为1(真)。此时bJudge的值为1(真)。语句中用括号把a> b括起来,用于提高a> b的优先级,先计算a> b,再取反。

例【1】逻辑运算符练习

程序清单 sample.c

#include <stdio.h>
int main()
{
    //声明变量a、b、c、bJudge
    int a = 10,b = 20,c = 15,bJudge;
    // 执行逻辑与判断
    bJudge =  c > a && c < b;
    printf("c(15) > a(10) && c(15) < b(20)的结果:bJudge =%d\n",bJudge);     
    //执行逻辑或判断
    bJudge =  c > a || c < b;
    printf("c(15) > a(10) || c(15) < b(20)的结果:bJudge =%d\n",bJudge);     
    //执行逻辑非
    bJudge =  !( a> b);
    printf("!( a(10)> b(20))的结果:bJudge =%d\n",bJudge);

}

代码在线纠错(通义千问 qwen-max)

支持粘贴多个代码文件,提交后由阿里云通义千问自动分析代码漏洞、语法错误、逻辑问题并给出修改建议。
您已解锁 AI 代码纠错功能,可正常使用!

评论区

登录 后发表评论
暂无评论