【C语言】统计字符串数组内的各种字符个数,中英文大小写,空格,特殊字符

水平拙劣,望各位留下宝贵意见多多指教

#include<stdio.h>
#include<conio.h>
//统计数字,英文大,小写,空格,其他字符。
int main( )
{   
    int n = 0,bc = 0,sc = 0,k = 0,o = 0,x = 0;//计数器
    char a[80];//80个内的字符
    int i;
    printf("请输入80个字符以内的文本:\n");
    gets(a);
    for ( i = 0; a[i] != '\0'; i++)
    {
        if ( (int)a[i] > 32 && (int)a[i] <= 47 \//判断特殊字符
            ||(int)a[i] >= 58 && (int)a[i] <= 64\
            ||(int)a[i] >= 91 && (int)a[i] <= 96\
            ||(int)a[i] >= 123 && (int)a[i] <= 126)
            {
                o++;
            }
            else if ((int)a[i] >= 65 && (int)a[i] <= 90 )//判断大写字母
            {
                bc++;
            }
            else if ((int)a[i] >= 97 && (int)a[i] <= 122 )//判断小写字母
            {
                sc++;
            }
            else if ((int)a[i] >= 48 && (int)a[i] <= 57 )//判断数字
            {
                n++;
            }
            else if ((int)a[i] == 32)//判断空格
            {
                k++;
            }
            else//除此以外的就是中文字符了,中文字符 占2字节,所以输出要除以2
            {
                x++;
            }       
    }
    printf("数字有%d个\n大写字母有%d个\n小写字母有%d个\n特殊符号有%d个,\n空格有%d个,\n中文字符有%d个",n,bc,sc,o,k,(x/2)); 
    getch();
    return 0;
}
  • 7
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值