开发者社区 问答 正文

C新手,求解一个问题

#include <stdio.h>
void main()
{
    char c;
    int letter=0,space=0,number=0,other=0;
    while ((c=getchar())!='\n')
    {
        if (65<=c<=90||97<=c<=122)//为什么无论输入什么字符,都会加到letter上!?
            letter++;
        else if(c=' ')
            space++;
        else if(48<=c<=57)
            number++;
        else 
            other++;
    }
    printf("%d\n%d\n%d\n%d\n",letter,space,number,other);
}

展开
收起
a123456678 2016-06-03 19:17:08 1808 分享 版权
1 条回答
写回答
取消 提交回答
  • `
    if ((65<=c&&c<=90)||(97<=c&&c<=122))
    `
    建议重新去看一遍逻辑运算符执行顺序 ...

    2019-07-17 19:27:09
    赞同 展开评论
问答地址: