printf 的输出?
语句:printf("%d",(a=2)&&(b=-2));的输出结果是( ).A.无输出 B.结果不确定 C.1 D.-1
刚一看还以为很简单啊,可一上turbo C2.0运行,可咋都不动。这是我上机的程序:
main()
{ int a,b;
printf("%d",(a=2)&&(b=-2));
}
这一题可让我想了一般天,为什么是A不是C啊,难道是编译器有问题(以前我的编译器老是出问题);
我是这样分析的:(a=2)把2赋给a则该式子为非0,即为真。同理(b=-2)也是真,则(a=2)&&(b=-2)为真,值为1
所以我想到的是C,这是为什么啊?
帮我分析一下吧!