C语言实现对键入字符的一系列处理

设计一个程序:由键盘输入一串字符,直到键入回车键时退出;对字母进行大小写转换;若输入的不是字母则报错;并统计出键入的大写字母数、小写字母数和非字母数。


#include<stdio.h>
int main()
{
    char s[100];
    gets(s);
    int a=0,b=0,c=0;
    for(int i=0;i<strlen(s);++i)
    {
        if(isalpha(s[i])){
            if(s[i]>='a'&&s[i]<='z')
            {
                s[i] = 'A'+s[i]-'a';
                ++a;
            }else if(s[i]>='A'&&s[i]<='Z')
            {
                s[i] = 'a'+s[i]-'A';
                ++b;
            }
            else;
        }else{
            printf("not alpha(%c).\n",s[i]);
            ++c;
        }
    }
    printf("%s\n",s);
    printf("lower:%d upper:%d other:%d\n",a,b,c);
    

    return 0;
}