#include <stdio.h> main() { int x=1,y=0,a=0,b=0; switch(x) { case 1: switch(y
#include<stdio.h>main(){intx=1,y=0,a=0,b=0;switch(x){case1:switch(y){case0:a++;break;...
#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);
}帮忙解释一下这个程序吧! 展开
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);
}帮忙解释一下这个程序吧! 展开
3个回答
展开全部
int x=1,y=0,a=0,b=0;
switch(x)
{ case 1: //此时X=1,进入case1;
switch(y)
{ case 0: a++; break; //此时y=0,进入case0;,a++后break跳出switch(y)
case 1: b++; break;
}
case 2: a++; b++; break; //因为 switch(x) 的 case 1没有break跳出,继续执行a++,b++后break跳出
case 3: a++; b++;
}
最后结果,a=2,b=1
switch(x)
{ case 1: //此时X=1,进入case1;
switch(y)
{ case 0: a++; break; //此时y=0,进入case0;,a++后break跳出switch(y)
case 1: b++; break;
}
case 2: a++; b++; break; //因为 switch(x) 的 case 1没有break跳出,继续执行a++,b++后break跳出
case 3: a++; b++;
}
最后结果,a=2,b=1
展开全部
x=1 --> y=0 --> a++ --> a++;b++; --> printf(“a=%d,b=%d\n”,a,b);
下面对应结果:
x=1 y=0 a=1 a=2;b=1 a=2,b=1
下面对应结果:
x=1 y=0 a=1 a=2;b=1 a=2,b=1
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
x=1 -- y=0, a+1
-- y=1, b+1
x=2 -- a+1, b+1
x=3 -- a+1,b+1,结束循环
最后输出a和b
-- y=1, b+1
x=2 -- a+1, b+1
x=3 -- a+1,b+1,结束循环
最后输出a和b
追问
x不是一直是1吗?怎么还会是2和3哪求赐教!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询