问题
单项选择题
有以下程序
#include<stdio.h>
main()
int x=1,y=0,a=0,b=0;
switch(x)
case 1:
switch(y)
case 0:a++;break;
case 1:b++;break;
case 2:a++;b++;break;
case 3:a++;b++;
printf("a=%d,b=%d\n",a,b);
程序的运行结果是( )。
A.a=1,b=0
B.a=2,b=2
C.a=1,b=1
D.a=2,b=1
答案
参考答案:D
解析: 本题首先进入switch(x),进入case 1中进行嵌套判断,如果switch(y)也成立,a自加1,遇到break,退出嵌套,接着执行case 2,a自加为2,b自加为1,遇到break,结束循环,此时a=2,b=1。