问题 单项选择题

下列程序的运行结果是( )。 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>0) 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的值没有发生变化。

单项选择题
判断题