我改了一下,现正确了
void fun(char *tt,int pp[]);
main()
{
char aa[1000];
int bb[26],k;
printf("\n输入");
scanf("%s",aa);
fun(aa,bb);
for(k=0;k<26;k++)
printf("%d
",bb[k]);
printf("\n");
getch();
}
void fun(char *tt,int pp[])
{ int i,j,n=0;
char a='a';
for(i=0;i<26;i++)
pp[i]=0;
for(j=0;j<26;j++)
{ n=0;
for(;*tt!='\0';tt++)
{if(a==*tt)
pp[j]++;
n++;
}
a=a+1;
for(i=0;i<n;i++)
tt--;
}
}
更科学简单的是下面这个
void fun(char *tt,int pp[]);
main()
{
char aa[1000];
int bb[26],k;
printf("\n输入");
scanf("%s",aa);
fun(aa,bb);
for(k=0;k<26;k++)
printf("%d
",bb[k]);
printf("\n");
getch();
}
void fun(char *tt,int pp[])
{ int i;
for(i=0;i<26;i++)
pp[i]=0;
for(;*tt!='\0';tt++)
{if(*tt>='a'&&*tt<'z')
pp[*tt-'a']++;
}
}