为表示“a和b都不等于0”,应使用的C语言表达式是( ).

问题描述:

为表示“a和b都不等于0”,应使用的C语言表达式是( ).
A)(a!=0) || (b!=0)
B)a || b
C)!(a=0)&&(b!=0)
D)a && b
但是我没看出来C有什么问题,大神能指出下么,

C,!(a=0)就是将a=0的结果取非,当a不等于0事,a=0的结果应该是0,在前面加个!表示非0.
b!=0就不用解析了吧?可是答案是D。。。我不知道为什么。。奥,我弄错了,C答案中a=0表示赋值,不好意思,如果C中写成!(a==0),那就对了答案D,a不等于0时,a表达式为真,当b不等于0时,b表达式为真,用&&结合,表示两个条件都要满足,选D