c语言 统计字符串中字符数目

用几个测试用例输出了一下发现统计不了回车字符,这是为什么呀


void StringCount( char s[] ){
    int letter=0,blank=0,digit=0,other=0;
    while(*s!='\0'){
        if((*s>=65&&*s<=90)||(*s>=97&&*s<=122)){
            letter++;
        }else if(*s>='0'&&*s<='9'){
            digit++;
        }else if(*s==' '||*s=='\r'){
            blank++;
        }else{
            other++;
        }
        s++;
    }
    printf("letter = %d, blank = %d, digit = %d, other = %d",letter,blank,digit,other);
}

你的测试用例是什么?你回车符是用键盘输入的还是用的字符串“abcd\rabc”这样的,如果你是用键盘输入的,那么字符串中的字符是\n,不是\r

补充:从上到下依次是判别 大小写字母、数字、空格和回车