如下所示,关于case 1:switch(y)的问题

#include void main( ) { int x=1,y=0,a=0,b=0; switch(x) { case 1:switch(y) { case 0:a++;
能不能帮我详细解释一下这个程序的运行过程及结果
#include
void 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(“\na=%d,b=%d”,a,b);
}

德玛西亚99
浏览 357回答 1
1回答

慕妹3146593

1 运行结果:a=2,b=12 分析:#includevoid main( ){ int x=1,y=0,a=0,b=0;switch(x) //x=1,执行后面的case 1分支{ case 1://执行switch(y) //y=0,执行后面的case 0分支{ case 0:a++; break; //执行,a=1,跳到后面的case 2执行.case 1:b++; break;}case 2:a++;b++; break; //执行.a=2,b=1.跳到后面的printf执行.case 3:a++;b++;}printf("\na=%d,b=%d",a,b); //输出一行空行后,再输出a=2,b=1.}
打开App,查看更多内容
随时随地看视频慕课网APP