对于逻辑表达式“xandyornotz”,and、or、not分别是逻辑与、或、非运算,优先级从高到低为not、and、or,and、or为左结合,not为右结合,若进行短路计算,则( )。
- A.x为真时,整个表达式的值即为真,不需要计算y和z的值
- B.x为假时,整个表达式的值即为假,不需要计算y和z的值
- C.x为真时,根据y的值决定是否需要计算z的值
- D.x为假时,根据y的值决定是否需要计算z的值
正确答案及解析
正确答案
C
解析
本题主要考查逻辑与、或运算。
逻辑与运算需要考虑两个操作数的值,对于本题的运算优先级,最后计算的是逻辑或运算,而逻辑或只要第一个操作数为真,那么整个计算结果即为真,这种情况下无需考虑其第二个操作数的值。
对于逻辑或的两端分别为(xandy)和(notz),如果前者为真,则不用计算其他表达式,只有当x为真且y也为真时,整个表达式不需要计算(notz)部分,因此本题的答案选C。





