#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
int i,sum=0;
char a[100];
printf("请输入:");
scanf("%s", a);
printf("\n大小写字母 :");
for(i=0; '\0'!=a[i]; i++)
{
if((a[i]>='a'&& a[i]<='z') ||( a[i]>='A' && a[i]<='Z' ))
{
sum++;
putchar(a[i]);
}
}
printf("\n大小写字母个数 : %d\n",sum);
return 0;
}
追问若这段字符串中有重复的字母呢?若要是按照你的这个来,,,同样会输出重复的字母
追答参照3楼,我给他投票了。我是审错题了。
cnt[200]改成cnt['z'+1]更节省内存。
再想更节省内存就cnt[26+26],但是你的储存和计算都要转换。