「已注销」 2020-11-23 23:25 采纳率: 50%
浏览 15
已采纳

这个用来字符分类统计怎么不行呀 一直超时 是出不来循环吗 感谢大佬相助 !!c语言

#include <stdio.h>
int main ()
{
    int letter=0 , number=0, others=0, space=0;
    char ch;
    scanf("%c",&ch);
    while (ch != '\n'){
  
    if (ch>='a' && ch<='z' || ch>='A' && ch<='Z')
       letter++;


    else if (ch >='0' && ch <='9')
        number++;


    else if (ch == ' ')
        space++;


    else
        others++;
}
    printf("%d%d%d%d",letter , number, others, space);
    return 0;

 }
 

  • 写回答

2条回答 默认 最新

  • qq_25376897 2020-11-24 11:51
    关注

    ch是char类型,单字符,scanf输入接收后只接收了第一个字符,下面while就会死循环

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 MCNP里如何定义多个源?
  • ¥20 双层网络上信息-疾病传播
  • ¥50 paddlepaddle pinn
  • ¥20 idea运行测试代码报错问题
  • ¥15 网络监控:网络故障告警通知
  • ¥15 django项目运行报编码错误
  • ¥15 请问这个是什么意思?
  • ¥15 STM32驱动继电器
  • ¥15 Windows server update services
  • ¥15 关于#c语言#的问题:我现在在做一个墨水屏设计,2.9英寸的小屏怎么换4.2英寸大屏