c语言,结果是什么,为什么

如题所述

A。31
年轻人~,没有在计算机上运行下,你永远不知道最终的结果会是什么。
case 0:case 3:a+=2;表示为0和为3时,均执行a+=2;而这里也没有break;所以还会继续执行为1和为2的a+=3;依然没有遇到break;所以还会执行a+=5;
因此:
i==1,a==8;//从这里开始case 1:case 2: a+=3;得到3,接着a+=5,得到8.
i==2,a==16;//从这里开始case 2: a+=3;得到8+3=11,接着a+=5,得到11+5=16.
i==3,a==26;//从这里开始case 3: a+=3;得到16+3=19,接着a+=3,得到21接着a+=5,得到26.
i==4,a==31;//从这里开始default:a+=5;追问

好厉害,谢谢

只要没有遇到break,就算遇到default也继续执行对吗

温馨提示:答案为网友推荐,仅供参考
第1个回答  2017-06-05
b 13追答

for规定5>i>=1 即1,2,3,4
1,+3.2+3.3+2.4+5
0+3+3+2+5=13

追问

结果31,一楼答案

第2个回答  2017-06-05
13吧,循环里i是从1到4,按case的结果就是i为0或3的时候a+2,为1和2的时候a+3,其它为+5,那就相当于四次循环就是
0+3+3+2+5
结果为13追问

结果是31,一楼答案