若给定条件表达式(M)?(a++):(a--),则其中表达式M().2010-3-26 18:35 提问者:461654091| 浏览次数:771次A:和(M==0)等价B:和(M==1)等价C:和(M!=0)等价D:和(M!=1)等价我知道答案是C,为什么B不对?

问题描述:

若给定条件表达式(M)?(a++):(a--),则其中表达式M().2010-3-26 18:35 提问者:461654091
| 浏览次数:771次A:和(M==0)等价
B:和(M==1)等价
C:和(M!=0)等价
D:和(M!=1)等价我知道答案是C,为什么B不对?

很多时候1和true是等价的,但是B选项中的1是整数1,不代表true,你看当M的值是2时,B选项的表达式的值就是false了;在C语言中非零数代表true,零代表false,所以C选项正确,C选项的表达式的意思是M不等于0,就是M是非零数.