#include
int main()
{
char m[100];
int i=0;
int a[26]={0};
gets(m);
while(m[i]!='\0')
{
if(m[i]>='a'&&m[i]<='z')
a[m[i]-'a']++;
else if(m[i]>='A'&&m[i]<='Z')
a[m[i]-'A']++;
i++;
}
for(i=0;i<26;i++)
printf("%c有%d个\n",i+'A',a[i]);
return 0;
}
就是在下标和字母之间转换
a-z共26个字符,然后定义了一个26个元素的数组。每个元素与一个字符进行对应。比如下标0表示'A',1表示'B',那么0转换为对应字符就是i+'A',反之,就是m[i] - 'a'