#include main() { int a=5,b=6,c=1,x=2,y=3,z=4; c=(a=c>x)&&(b

问题描述:

#include main() { int a=5,b=6,c=1,x=2,y=3,z=4; c=(a=c>x)&&(b=y>z); printf("%d",b); }
为什么运行结果是6?
1个回答 分类:综合 2014-10-10

问题解答:

我来补答
&&运算符是先计算左边表达式的值,如果左边表达式的值为0的话,就不执行右边表达式的值了.
而你左边表达式c=(a=c>x)的值已经为0了,所有程序根本就没有执行右边表达式的值,所以b的值没有发生变化.
 
 
展开全文阅读
剩余:2000