求教。。。。
#include <stdio.h>
void main()
{
char str[100];
int a,big=0,sm=0,num=0,oth=0; /*big大写字符,sm小写,num数字,oth其他*/
clrscr();
puts("input a string :\n");
gets(str); /*输入字符串*/
for(a=0;a<100;a++) /*利用ASCII判断每个字符的类型*/
{
if(str[a]>47 && str[a]<58)
num++;
else if(str[a]>64 && str[a]<91)
big++;
else if(str[a]>96 && str[a]<123)
sm++;
else
oth++;
}
printf("there are %d big characters \n%d small characters \n%d numbers \n%d other characters",big,sm,num,oth);
}
谁能帮我看看这个哪里错了啊。。。。 想要实现输入一组字符串,输出其中的大写字符,小写字符,数字,还有其他字符的个数。。
[解决办法]
for(a=0;a<100;a++) /*利用ASCII判断每个字符的类型*/
[解决办法]
没有撒问题撒。。。for(a=0;a<100;a++)-》for(a=0;a<strlen(str);a++)
[解决办法]
最好不要写47,58等魔数,要用‘0’,'9','a','z','A','Z',