问题
单项选择题
以下程序的输出结果是( )。
#include<stdio.h>
main()
int a, i; a=0;
for(i=1; i<5; i++)
switch(i)
case 0:
case 3:a+=2;
case 1:
case 2:a+=3;
default:a+=5;
prinrf("%d\n", a);
A) 31
B) 13
C) 10
D) 20
答案
参考答案:A
解析: 本题考查用于多分支选择的switch语句,其一般形式为:
switch(表达式)
{ case常量表达式1:语句1;
case常量表达式2:语句2;
case常量表达式n:语句n;
default:语句n+1;
}
其语义是:计算表达式的值,并逐个与其后的常量表达式值进行比较,当表达式的值与某个常量表达式的值相等时,即执行其后的语句,然后不再进行判断,继续执行后面所有case后的语句;如表达式的值与所有case后的常量表达式均不相等时,则执行default后的语句。