include <stdio.h> main() { char *s="12134211"; int v[4]={0,0,0,0},k,i; for (k=0;s[k];k++) { swit

include <stdio.h>
main()
{
char *s="12134211";
int v[4]={0,0,0,0},k,i;
for (k=0;s[k];k++)
{
switch(s[k])
{
case'1':i=0;
case'2':i=1;
case'3':i=2;
case'4':i=3;
}
v[i]++;
}
for(k=0;k<4;k++)
printf("%d",v[k]);
}
怎么看

输出是0008。因为全都加到v[3]上了,一共有8个数,加了8次1,结果自然是8。前面的v[0]、v[1]、v[2]三个元素没有机会增值。
温馨提示:内容为网友见解,仅供参考
第1个回答  2016-05-23
从代码看,是计算给定字符串中包含字符1、2、3、4的个数。
第2个回答  2017-10-31
正解:4 2 1 1
相似回答