一道C语言题,谢谢,求详解啊

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

选择B
A:如果想为真,则c应该至少满足c==2 c==4 c==6三者其一,显然A永远不能为真。
C:如果为真,应同时满足
(1)c>=2&&c<=6
(2)!(c%2)==1
两个条件。
条件1要求c只能取值2 3 4 5 6
条件2可变形为c%2==0也就是c为偶数
综上,想选项C为真,要求c只能取值2 4 6
D:选项和C本质上是一样得,右侧的条件c%2!=1说明c为偶数。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2017-08-29
我们知道&&只要有一个条件是假那么整个都为假,全部为真才为真。已知C不等于2,4,6所以答案C,D为假。
|| 只要一个条件为真那么整个就为真,全部为假才为假。已知C不等于2,4,6,A答案的三个条件(C==2),(C==4),(C==6)都不成立,所以A答案为假。B答案若c取值为3那,么c!=5一定为真,因为c只能取一个值,相反同理,若c不等于3或5那么后两个条件也一定成立。
第2个回答  2012-03-10
A显然只有c为2.4.6时为真
选B c取任何数都满足
C前面一部分要求c大于等于2小于等于6 后面一部分要求c为偶数 只有2,4,6了
D和C一样
第3个回答  2012-03-10
B
第4个回答  2012-03-10
BCD
相似回答