有以下程序 main() { int n=0,m=1,x=2; if(!n)x-=1; if(m)x-=2; if(x)x-=3; printf("%d\n",x); } 执行后输出结果是【

admin2009-04-15  15

问题 有以下程序
   main()
   { int n=0,m=1,x=2;
     if(!n)x-=1;
     if(m)x-=2;
     if(x)x-=3;
     printf("%d\n",x);
   }
    执行后输出结果是【  】。

选项

答案-4

解析 if…else构造了一种二路分支选择,是一种最基本的选择结构,if(条件)S1(if分结构)elseS2(else分结构),它的工作过程是:先对条件表达式进行判断,若为真(成立,值为非零),就执行if分结构(S1);否则(不成立,值为0),就执行else分结构(S2)。本题中,n=0,可以判断(!n)为真,执行x=x-1=2-1=1;m=1,可以判断(m)为真,执行x= x-2=1-2=-1进而可以判断(x)为真,执行x=x-3=-1-3=-4。
转载请注明原文地址:https://jikaoti.com/ti/QpK0FFFM
0

最新回复(0)