main() {int n=0,m=1,x=2;if(!n)x=-1;if(m)x=x-2;if(x)x=-3;prin

问题描述:

main() {int n=0,m=1,x=2;if(!n)x=-1;if(m)x=x-2;if(x)x=-3;printf("%d\n",x);}求运行后的结果,
刚开始学,给说详细一点,为什么得出这个数,我知道是-3
1个回答 分类:综合 2014-09-26

问题解答:

我来补答
if语句里面的判断式只要不为0都是真,然后就可以执行if下面的语句
if(!n)x=-1
n=0,!n=1,if(!n)为真,执行x=-1
得出的值为-1
if(m)x=x-2
m=1,if(m)为真,执行后面的x=x-2
x=x-2是把等式右边的值赋给左边,前面得出x=-1,所以x-2=-1-2=-3
得出右边的x=-3
if(x)x=-3
x=-3,if(x)为真,执行后面的x=-3
最后输出-3
 
 
展开全文阅读
剩余:2000