求大神指教一下这个程序怎么优化
输入一行字符,统计其中的英文字符、数字字符、空格及其它字符的个数。这个程序可以优化吗?让运算的时间在1000ms内,求大神指教。
输入值:Twinkle, twinkle, little star
输出值:English character: 24
digit character: 0
space: 3
other character: 2
#include <stdio.h>
#include <stdlib.h>
int main()
{char ch;
int a,b,c,d;
a=b=c=d=0;
while((ch=getchar())!='\n')
{
if(ch>='A'&&ch<='Z'||ch>='a'&&ch<='z')
{a++;}
else if(ch>='0'&&ch<'9')
{b++;}
else if(ch==' ')
{c++;}
else
{d++;}
}
printf("English character: %d\ndigit character: %d\nspace: %d\nother character: %d",a,b,c,d);
}