(c语言)统计字符

问题描述

先给出个数,换行给字符。

统计字符,包括数字,英文,其他字符


输入

10
Reold12-3


输出

letter=5,digit=3,other=2


为教材原题,代码如下:

#include "stdio.h"
int main(){
    int letter,  digit, other, n, i;
    char ch;
    letter=digit=other=0;
    scanf("%d",&n);
    //getchar();  //读取且舍弃缓冲区的换行符
    for(i=1; i<=n; i++){
        ch=getchar();
        if((ch>='a' && ch<='z')||(ch>='A'&&ch<='Z'))
            letter++;
        else if (ch>='0'&&ch<='9')
            digit++;
        else
            other++;
    }
    printf("letter=%d,digit=%d,other=%d",letter,digit,other);
}

对于注释部分:教材从顺序上解释了作用,即“读入舍弃多余的换行符”。实际情况因开发环境智能程度而异。保险起见要加上。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值