关系操作符
C语言用于比较的表达式,称为关系表达式。里面使用的运算符就称为关系运算符。
关系表达式通常返回0或1,表示真假。
C语言中,0表示假,非0表示为真。
常量放在==号的右边时,如果漏打一个“=”,号,编译器还是会执行,但是输出结果可能会错误,所以我们通常建议把常量放在“==”号左边,这样如有漏泄写“=”时,编译器会进行报错。
要避免关系操作符之间的连用情况,如:
上述情况,输入40的时候,也会显示为青年,原因是:语句的执行是从左到右依次进行的,年龄为10时,if语句左边开始判断,40大于18为真,输出为1,输出为1的值再进行与36的判断,1小于36,结果为真,所以打印青年。这是错误的,我们应该用&&符号进行连用,如下:
条件操作符
条件操作符也叫做三木操作符,需要接受三个操作数的,,形式如下:
条件操作符的计算逻辑:如果exp1为真,exp2计算,计算的结果就是此表达式的结果;
如果exp1为假,exp3计算,计算的结果就是此表达式的结果。
练习:
练习2:
逻辑操作符:&&、||、!。
逻辑运算符提供逻辑判断功能,用于构建更复杂的表达式,主要有以下三种表达式:
!:逻辑取反运算符(改变单个表达式的真假)。
&&:逻辑与运算符,就是并且的意思(两侧的表达式都为真,则为真,否则为假)。使用的方式是a&&b,两边的表达式都为真,才为真。
||:逻辑或运算符,就是或者的意思(两侧至少有一个表达式为真,则为真,否则为假)。使用的方式是a||b,两边的表达式有个一个为真,就为真。
练习:
短路
C语言逻辑运算符还有一个特点,它总是先对左侧的表达式求值,再对右边的表达式求值,这个顺序是保证的。如果左边的表达式满足逻辑运算符的条件,就不再对右边的表达式求值。这种情况称为短路。