问题 问答题

#include<stdio.h>
main()
char *a="12134211";
int v1=0,v2=0,v3=0,v4=0,k;
for(k=0;k<=strlen(a );k++)
switch(*a++)
default:v4++;
case’1’:v1++;
case’3’:v3++;
case’2’:v2++;)
printf("v1=%d,v2=%d,v3=%d,v4=%d\n",v1,v2,v3,v4);

答案

参考答案:v1=3,v2=5,v3=4,v4=1
解折:
#include<stdio.h>
main3()
{char *a="12131211";
int v1=0,v2=0,v3=0,v4=0,k;
for(k=0;k<strlen(a );k++)/*,循环被终止的条件是k的值大于字符串a的长度8*/
switch(*a++)/*选择的条件是数组a的元素,并且a作为于指针变量有一个自增1运算*/
{default:v4++;
case’1’:v1++;
case’3’:v3++;
case’2’:v2++}/*因没有break语句,从符介条什的语句开始,每一行case语句都会被执行*/
printf("vt=%d,v2=%d,v3=%d,v4=%d\n",v1,v2,v3,v4);
}

单项选择题
单项选择题