c语言模考题目

来源:百度知道 编辑:UC知道 时间:2024/06/09 03:09:58
main()
{ int a,i;a=0;
for(i=0;i<5;i++)
{ switch(i)
{
case 0:
case 3:a+=2;
case 1:
case 2: a+=3;
default:a+=5;
}printf("%d\n",a);

}

}
请各位高手帮我解释下,为什么输出31啦,有详解最好啦,做这类题目有没有啥技巧啊?

在c里边case后要是没有break的话。就会执行它下边的所有case
比如i=1.那么从case1往后的语句他都执行

我运行了一下,没输出31啊,是
10
18
26
36
41