编写一函数,由实参传来一个字符串,统计此字符串中字母、数字、空格和其它字符的个数,改错

编写一函数,由实参传来一个字符串,统计此字符串中字母、数字、空格和其它字符的个数,在主函数中输入字符串,输出上述结果。程序编写时最好把存放字母、数字、空格和其它字符的变量定义为全程变量,这样在函数中就不必定义了。用其它方法也可以。
#include "stdio.h"
int letter=0,number=0,space=0,other=0,i;
main()
{
char a[30];
gets(a);
fff(a);
printf("letter=%d,number=%d,space=%d,other=%d",letter,number,space,other);
}
fff(b)
char b[30];
{

for (i=0;b[i]!='\0';i++)
{if(65<=b[i]<=90||97<=b[i]<=122) letter++;
else if(48<=b[i]<=57) number++;
else if(b[i]==32) space++;
else other++;}
}

帮我看看错哪了,输什么都算成letter

不能使用连续的不等式的。

#include "stdio.h"

int letter=0,number=0,space=0,other=0,i;

main()

{

char a[30];

gets(a);

fff(a);

printf("letter=%d,number=%d,space=%d,other=%d\n",letter,number,space,other);

system("pause");

}

fff(b)

char b[30];

{

for (i=0;b[i]!='\0';i++)

{if(65<=b[i]&&b[i]<=90||97<=b[i]&&b[i]<=122) letter++;

else if(48<=b[i]&&b[i]<=57) number++;

else if(b[i]==32) space++;

else other++;}

}

温馨提示:答案为网友推荐,仅供参考