【C++】计算字符个数

计算字符个数(ASCII码:A=65,B=66,...,Z=90。a=97,b=98,...,z=122。)

题目描述

写出一个程序,接受一个有字母和数字以及空格组成的字符串,和一个字符,然后输出输入字符串中含有该字符的个数。不区分大小写。

输入描述:

输入一个有字母和数字以及空格组成的字符串,和一个字符。

输出描述:

输出输入字符串中含有该字符的个数。

输入例子:

ABCDEF

A

输出例子:

1

解答代码:

#include<iostream>  
#include<cstring>  
using namespace std;  

//判断字符串是否为大写,若否转换为大写。
void change(char *str)  
{  
    int i;  
    for(i=0; str[i]!='\0'; i++)  
    {  
        if(str[i]>='a'&&str[i]<='z')  
            str[i]=str[i]-32;  
    }  
}  
  
int main()  
{  
    char str[512],ch;  
    int i,count=0,length=0;  
    cin.getline(str,512);  
    cin.get(ch);  
    length=strlen(str);  
    change(str);      //转换字符串为大写。
    //要求统计的字符是字母,转换字符为大写。 
    if((ch>='a'&&ch<='z')  || (ch>='A'||ch<='Z'))  
    {  
        //待统计的字符为小写,转换成大写,后面可与字符串中的统一比较不再区分大小写  
        if(ch>='a'&&ch<='z')  
            ch=ch-32;  
        for(i=0; i<length; i++)  
        {  
            if(str[i]==ch)  
                count++;  
        }  
    }   
    cout<<count<<endl;  
    return 0;  
}  


  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值