开发者社区> 问答> 正文

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 1733 0
1 条回答
写回答
取消 提交回答
  • `
    if ((65<=c&&c<=90)||(97<=c&&c<=122))
    `
    建议重新去看一遍逻辑运算符执行顺序 ...

    2019-07-17 19:27:09
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
考察数据科学家支持向量机(SVM)知识的25道题,快来测测吧 立即下载
低代码开发师(初级)实战教程 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载