关于表达式的真值判断


//当变量c的值不为2,4,6时,值为“真”的表达式是
A) (c>=2&&c<=6)&&(c%2!=1)
B) (c==2)||(c==4)||(c==6)
C) (c>=2&&c<=6)&&!(c%2)
D) (c>=2&&c<=6)||(c!=3)||(c!=5)

img

  • &&是逻辑与,两端都为真,整个表达式的值才为真
  • ||是逻辑或,两端只要有一个为真就是真,两个都是假才是假

题目要求c的值不能为2/4/6

  • A选项中c%2!=1,那么在2和6中间只有3、5可以选择,它们两个都不符合c%2!=1这个条件,表达式A为假
  • B选项中3个条件我们都无法满足,3个都为假,整个表达式是假
  • C选项中c小于6大于2,也是只有3/5可选。3%2还有5%2都等于1,!是逻辑取反,也就是把真改成假,假改成真。所以!(c%2)就是假,整个表达式也是假了
  • D选项中我们可以不选2到6之间的数,这时候(c!=3)一定为真,整个表达式就是真了

注意:A/C选项中的是&&,我们必须在满足第一个表达式的前提下看第二个表达式。而D选项中是||,我们可以不满足第一个表达式(c>=2&&c<=6),只要满足(c!=3),整个表达式就为真了。在D选项中即便C=5表达式也是真的。