C语言中什么是逻辑表达式,什么是关系表达式。举几个例子
发布时间:2025-05-13 06:48:52 发布人:远客网络
一、C语言中什么是逻辑表达式,什么是关系表达式。举几个例子
逻辑表达式是指运算符为或||、与&&、非!的表达式。返回值为0或1,0表示daofalse,非0表示true.例如!0返回1,0&&1返回0,0||1返回1。
关系表达式是指运算符为<,<=,>,>=,==,!=的表达式。返回值同样为0或1,例如a!=b,a>=0等。
C语言用整数"1"表示"逻辑真"、用"0"表示"逻辑假"。但在判断一个数据的"真"或"假"时,却以0和非0为根据:
如果为0,则判定为"逻辑假";如果为非0,则判定为"逻辑真"。
例如,假设num=12,则:!num的值=0,num>=1&& num<=31的值=1,num|| num>31的值=1。
逻辑运算符两侧的操作数,除可以是0和非0的整数外,也可以是其它任何类型的数据,如实型、字符型等。
短路原则:非常重要,在计算逻辑表达式时,只有在必须执行下一个表达式才能求解时,才求解该表达式(即并不是所有的表达式都被求解)。换句话说:
对于逻辑与运算,如果第一个操作数被判定为"假",系统不再判定或求解第二操作数;对于逻辑或运算,如果第一个操作数被判定为"真",系统不再判定或求解第二操作数。
由于浮点数在计算机中不能非常准确地表示,所以,判断两个浮点数是否相同时,通常不使用关系运算符“等于”(==),而是利用区间判断方法来实现。为了判断x是否等于5.003,可利用如下逻辑表达式:x>5.002&& x<5.004。
当此逻辑表达式为“真”时,就可以认为x等于5.003
逻辑及性质保真性:所有变量的真值皆为“真”的命题在逻辑或运算后的结果为真。保假性:所有变量的真值皆为“假”的命题在逻辑或运算后的结果为假。
二、C语言中条件表达式和逻辑表达式的意义是什么他们的取值如何
逻辑表达式用于判断条件是否成立
表达式的值为零(假)或非零(真)
使用==、!=、>、>=、<、<=、!运算符的表达式均称为逻辑表达式
逻辑表达式可以使用||、&&进行组合,以表示复杂的逻辑判断,如:
//判断number是否满足条件:是2的倍数且是3的倍数
(number%2==0)&&(number%3==0)
//判断number是否满足条件:是24的约数或是21的约数
(24%number==0)||(21%number==0)
条件表达式形如:<exp1>?<exp2>:<exp3>
条件表达式形如:<exp1>?<exp2>:<exp3>
说明:exp1、exp2、exp3为必要的表达式
取值:若exp1的值非零则取exp2的值否则取exp3的值
在进行简单的二选一的情景下,使用条件表达式比使用if-else表达更清晰、书写更简洁,如:
//使用if-else获取两个数中的较大值
//使用条件表达式获取两个数中的较大值
三、C语言中逻辑运算符用法
1、逻辑运算符是根据表达式的值来返回真值或是假值。在C语言中没有专门的真值和假值,认定非0为真值,0为假值。
||或:两个条件中,只要有一个成立,则结果就成立;
&&与:两个条件中,两个同时成立,则结果成立,否则不成立;
!非:取反之意,如果是真,结果是假,如果是假,结果是真。
下为C语言逻辑运算||和&&的真值表: