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