求解一道C语言初级题目
本人刚刚接触C语言,有这样一道题目,编写一个C语言程序,要求实现的功能为:从键盘上输入一行带有英文字母的任意字符串,假定该字符串的长度不超过50,试统计出该串中所包含的每一种字母a、b、c、d的个数(字母大小写等效),并分行依次输出,每行的输出格式为“字母:个数”,如假定字母a的个数为3,则输出格式为“a: 3”。提示:请在for循环内使用switch语句分别进行字母个数的统计,代码如下:#include<stdio.h>
int main()
{
char s[50];
int num_a,num_b,num_c;
num_a=0;
num_b=0;
num_c=0;
int i=0;
do
{
scanf("%c",&s[i]);
i++;
}
while(s[i-1]!='\n');
s[i+1]='\0';
for(i=0;s[i]!='\0';i++)
{
switch(s[i])
{
case'a':num_a++;break;
case'A':num_a++;break;
case'b':num_b++;break;
case'B':num_b++;break;
case'c':num_c++;break;
case'C':num_c++;break;
}
}
printf("a:%d\n",num_a);
printf("b:%d\n",num_b);
printf("c:%d\n",num_c);
return 0;
}
但是在VC6.0上调试出现了如下错误:main.c
e:\c语言形成性考核\xkzy2\main.c(9) : error C2143: syntax error : missing ';' before 'type'
e:\c语言形成性考核\xkzy2\main.c(12) : error C2065: 'i' : undeclared identifier
执行 cl.exe 时出错.
请大侠赐教!~~~