假设有一组数据:工资为800元,职称为“讲师”,性别为“男”,在下列逻辑表达式中结果为“假”的是( )。
A) 工资>800 AND职称="助教" OR 职称="讲师"
B) 性别="女" OR NOT 职称="助教"
C) 工资=800 AND (职称="讲师" OR 性别="女")
D) 工资>800 AND (职称="讲师" OR 性别="男")
参考答案:D
解析: 逻辑运算符及其含义如下。
Not:当Not连接的表达式为真时,整个表达式为假。
And:当And连接的表达式都为真时,整个表达式为真,否则为假。
Or:当Or连接的表达式有一个为真时,整个表达式为真,否则为假。
在逻辑表达式中,括号可改变优先级的顺序,强制优先处理表达式的某部分,括号内的操作总是比括号外的操作先被执行。
选项A):“工资>800”条件为假,“职称="助教"”条件为假,“职称="讲师"”条件为真,所以整个表达式可以看作“假 AND 假 OR 真”,表达式中没有括号,且逻辑运算符的运算顺序为NOT→AND→OR,所以先运算AND表达式的值为“假”,即表达式演变为“假OR真”,根据逻辑运算符的含义,最终结果为“真”。
选项B):判断各条件后,表达式可以看作“假 OR NOT 假”,同样,由逻辑运算符的运算顺序得知先运算NOT表达式,所以表达式演变为“假 OR 真”,最终结果为“真”。
选项C):判断备条件后,表达式可以看作“真 AND(真 OR 假)”,优先执行括号内的表达式,也就是“真 AND 真”,最终结果为“真”。
选项D):判断备条件后,表达式可以看作“假 AND(真 OR 真)”,优先执行括号内的表达式,也就是“假 AND 真”,最终结果为“假”。
所以本题答案为D)。