
下列程序的输入结果是 main() {int x=1,a=0,b=0; switch(x){case 0:b++; case 1:a++; case 2:a++;b++; }
(接上面)printf("%d,%d\n",a,b);}答案是2,1这条我一点都不懂,高手能帮我详解一下吗,非常感谢!!!!...
(接上面)printf("%d,%d\n",a,b);
}
答案是2,1
这条我一点都不懂,高手能帮我详解一下吗,非常感谢!!!! 展开
}
答案是2,1
这条我一点都不懂,高手能帮我详解一下吗,非常感谢!!!! 展开
3个回答
展开全部
#include<stdio.h>
void main()
{
int x=1,a=0,b=0;
switch(x) //x=1;所以跳到case 1
{
case 0:b++;
case 1:a++; //从这里开始,满足条件:a++.....a=1 没有break;语句来跳出继续往下
case 2:a++;b++; //继续执行:执行a++,b++......a=2,b=1 程序结束
}
printf("%d,%d\n",a,b); //所以输出 2,1
}
void main()
{
int x=1,a=0,b=0;
switch(x) //x=1;所以跳到case 1
{
case 0:b++;
case 1:a++; //从这里开始,满足条件:a++.....a=1 没有break;语句来跳出继续往下
case 2:a++;b++; //继续执行:执行a++,b++......a=2,b=1 程序结束
}
printf("%d,%d\n",a,b); //所以输出 2,1
}
展开全部
这个例子告诉你switch语句不用break时的副作用。这几个case会依次往下执行,结果如你如说。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
switch(x)
x=1跳到case 1:a++;
case 2:前面没用break;所以继续a++;b++;
x=1跳到case 1:a++;
case 2:前面没用break;所以继续a++;b++;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询