早教吧 育儿知识 作业答案 考试题库 百科 知识分享

voidmain(){inta=0,b=0,d=0;char*s="xcbc3abcd";for(;*s!='\0';s++);switch(*s){case'a':a++;break;case'b':b++;break;default:d++;}printf("a=%d,b=%d,d=%d\n",a,b,d);}

题目详情
void main( ) { int a=0,b=0,d=0; char *s="xcbc3abcd"; for(;*s!='\0';s++); switch(*s) { case 'a':a++;
break;
case 'b':b++;break;
default:d++;
}
printf("a=%d,b=%d,d=%d\n",a,b,d);
}
▼优质解答
答案和解析
结果:a=0,b=0,d=1 .
for 循环后有分好,*s 最后结果是 '\0' 所以只有 d 加 1 .
改为 for( ;*s != '\0'; s++)
printf("*s = %c\n",*s);
试试就好啦.