问题 单项选择题

下列程序的运行结果是( )。 main() { int a=-5,b=1,c=1;int x=0,y=2,z=0;if(c>0)x=x+y;if(a<=0){ if(b>O) if(c<=0)y=x-y;}else if(c>0)y=x-y;else z=y;printf("%d,%d,%d\n",x,y,z); }

A.2,2,0

B.2,2,2

C.0,2,0

D.2,0,2

答案

参考答案:A

解析: 本题考查if else语句的使用。先判断第1个if语句,因为c=1>0,所以x=x+y=0+2=2。第1个if语句,因为a=-5<0,所以进入下列的复合语句。经判断发现,复合语句中第2个if语句的条件均不满足,不执行任何语句退出,在这个过程中y和z的值没有发生变化。

单项选择题
问答题 简答题