题目:
下列条件语句中,功能与其他语句不同的是
A: if(a) printf("%d\n",x); else printf("%d\n",y);
B: if(a==0) printf("%d\n",y); else printf("%d\n",x);
C: if(a!=0) printf("%d\n",x); else printf("%d\n",y);
D: if(a==0) printf("%d\n",x); else printf("%d\n",y);
解释说明:
A:if(a) => a值为真(即不等于0都为真)的话就输出x,否则输出y;
B:if(a==0) => a=0(即a不为真)时输出y,否则输出x;
C:if(a!=0) => a不等于0(即a为真)时输出x,否则输出y;
D:if(a==0) => a=0(即a不为真)时输出x,否则输出y;
从上可得 A、B、C都时 当a为真时输出x,否则输出y,只有D是相反的
所以选择D