void main() { int a=4,b=5,c=0; switch(a) { case 3:a++; case 4:b++; case 5:c++; } printf("%d,%d,%d\n"

这个C语言程序怎么理解?... 这个C语言程序怎么理解? 展开
 我来答
moweibin1021
2012-06-25 · TA获得超过373个赞
知道小有建树答主
回答量:132
采纳率:0%
帮助的人:48.8万
展开全部
我估计你后面的printf语句是:printf("%d,%d,%d\n",a,b,c);

是这样子的:
首先声明赋值:a=4,b=5,c=0,这个应该容易明白;
switch(a)是指根据a的值去执行{}里各种情况(switch语句括住的各种case);
这里a=4,所以执行case 4后面的语句,也就是b++了,此后,a=4,b=6,c=0;
但因为case 4里没有break跳出switch语句,所以会一直执行case 4下面的所有case,也就是case 5,执行c++,此后a=4,b=6,c=1;
case 5后面就没有再多的case了,就跳出switch语句,执行printf语句,打印出a,b,c的值是:
4 6 1
derek_chen2012
2012-06-25 · TA获得超过465个赞
知道小有建树答主
回答量:284
采纳率:0%
帮助的人:108万
展开全部
void main()
{
int a=4,b=5,c=0;//定义变量并初始化
switch(a) //执行SWITCH运算
{
case 3:a++;//如果a=3执行此行a+1
case 4:b++;//执行此行b+1
case 5:c++; //执行此行c+1
}
printf("%d,%d,%d\n

有问题请追问
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zhang19900789
2012-06-25
知道答主
回答量:4
采纳率:0%
帮助的人:6291
展开全部
在主文件下定义了3个整变量并赋予初值;通过一个选择函数,然后输出4,7,2
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
募思小孩
2012-06-26 · 超过19用户采纳过TA的回答
知道答主
回答量:136
采纳率:0%
帮助的人:55.9万
展开全部
因为,switch中没有break,所以switch相当于没有了,就单单等价于,
void main()
{ int a=4,b=5,c=0;
a++;
b++;
c++;
printf("%d,%d,%d\n",a,b,c);
}
这样子了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式