C语言习题,麻烦来个大神能给我详细解答一下,谢谢

C语言习题,麻烦来个大神能给我详细解答一下,谢谢42.有以下程序:#include<stdio.h>main(){intx=1,y=0,a=0,b=0;switch(x)... C语言习题,麻烦来个大神能给我详细解答一下,谢谢42. 有以下程序:
#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=2,b=2
B) a=2,b=1 C) a=1,b=1
D) a=1,b=0
为什么选(B)啊?
展开
 我来答
阳光的雷咩咩
2016-06-26 · TA获得超过1.4万个赞
知道大有可为答主
回答量:2.3万
采纳率:66%
帮助的人:7350万
展开全部
看到你这大括号的缩进我也是醉了!~
关键是注意C语言的switch语句中case是向下贯穿的,比如x = 1,这个执行后还会继续执行case = 2,3里面的,直到遇到break语句(具体的3就不执行了)。
然后你再按这个思路跟一下运行流程很自然就得出答案了。
更多追问追答
追问
😁😁我是直接粘贴过来的
能详细解释一下吗😁还是不能理解
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式