写一个函数求出一个字符串中所有字母的出现次数,不区分大小写

既然我们要统计出一个字符串所有字符出现的次数,那就要遍历这个字符串的所有字符。

这里只写了小写字母的情况,大写字母类似。

#include  
using namespace std

int main()
{

    void countChar(char *str,char *a);  
    char str[30];
    int a[26]={0};
    cout<<"please input a string:";
    cin.get(str,30);   //这里未检查数组越界,别输入太多会崩溃
    countChar(str,a);
    return 0;
}

void countChar(char *str,char *a)
{
    while(*str)
    {
          a[*str-'a']++;     //a[0]对应保存a出现的次数,如果*str为字符a那么*str-'a'=0
                            //同样如果*str为字符b那么'b'-'a'=1,则a[1]++,来记录b出现的次数
        *str++;
    }

    for(int i=0;i<26;i++)  //数组中的数字就是对应字母的个数
    cout<<(char)('a'+i)<

 

 

 

你可能感兴趣的:(c语言基础知识,c++)