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=2,b=1 switch(y) { case 0 : a++;break; case 1 : b++;break; }
答案:1 悬赏:30 手机版
解决时间 2021-03-19 07:14
- 提问者网友:自食苦果
- 2021-03-18 06:49
最佳答案
- 五星知识达人网友:掌灯师
- 2021-03-18 08:19
#include <stdio.h>
int main()
{
int x=1,y=0,a=0,b=0;
switch(x)
{
case 1://此处匹配
switch(y)
{
case 0 ://此处匹配
a++;//a=1
break;//此处跳出switch(y)
case 1 :
b++;
break;
}
case 2 ://由于case 1 这种情况并没有break与之对应,此处也匹配
a++;//a=2
b++;//b=1
break;//这儿有个break,后面的case 3 就不匹配了
case 3 :
a++;
b++;
}
printf("a=%d,b=%d\n",a,b);
}
int main()
{
int x=1,y=0,a=0,b=0;
switch(x)
{
case 1://此处匹配
switch(y)
{
case 0 ://此处匹配
a++;//a=1
break;//此处跳出switch(y)
case 1 :
b++;
break;
}
case 2 ://由于case 1 这种情况并没有break与之对应,此处也匹配
a++;//a=2
b++;//b=1
break;//这儿有个break,后面的case 3 就不匹配了
case 3 :
a++;
b++;
}
printf("a=%d,b=%d\n",a,b);
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯