A-A+
下面程序的输出是______。main() { char*s=12134211; int
问题详情
下面程序的输出是______。main() { char*s="12134211"; int v1=0,v2=0,v3=0,v4=0,k; for (k=0;s[k];k++) switch(s[k]) { default:v4++; case"1":v1++; case"3":v3++; case"2":v2++; } printf("v1=%d, v2=%d,v3=%d, v4=%dn",v1,v2,v3,v4); }
A.v1=4,v2=2,v3=1,v4=1
B.v1=4,v2=9,v3=3,v4=1
C.v1=5,v2=8,v3=6,v4=1
D.v1=8,v2=8,v3=8,v4=8请帮忙给出正确答案和分析,谢谢!
参考答案
正确答案:C
解析:当switch后面括弧内的表达式的值与某一个acse后面的常量的表达式的值相等时,就执行此case后面的语句,若所有的case中的常量表达式的值都没有与表达式的值匹配的,就执行default后面的语句。