【一】统计一个字符串中字母的个数

来源:互联网 发布:php数组里面放对象 编辑:程序博客网 时间:2024/05/17 07:08

一、统计一个字符串中字母的个数,[不]区分大小写

#include <iostream>using namespace std;int main(){    char a[] = "What is that";    //要统计的字符串    int count[26]; //用来记录每个字符个数的数组    memset(count, 0, sizeof(count));  //初始化为0   也可以直接用int count[26] = {0};    cout << sizeof(a)<<endl;   //数组大小    for(int i=0; i < sizeof(a); i++)    {        if((a[i] >= 'a' && a[i] <= 'z') )    //如果是小写字母        {            count[a[i] - 'a']++;   //此字母次数加1        }        else if(a[i] >= 'A' && a[i] <= 'Z')   //如果是大写字母        {            count[a[i] - 'A']++;  //此字母次数加1        }    }    for(i=0;i<26;i++)    {if(count[i] != 0){            //输出每个字符出现的次数            cout<<"字母"<<char('a'+i)<<"或"<<char('A'+i)<< "出现的次数为:"<<count[i]<<"次"<<endl;}}    return 0;}


二、统计一个字符串中字母的个数,区分大小写

#include <iostream>using namespace std;int main(){    char a[] = "What is that";    //要统计的字符串    int smallcount[26];    //记录每个[小]写字符的个数    int bigcount[26];    //记录每个[大]写字符的个数    memset(smallcount, 0, sizeof(smallcount));  //初始化为0    也可以直接用int smallcount[26] = {0};    memset(bigcount, 0, sizeof(bigcount));  //初始化为0    也可以直接用int bigcount[26] = {0};    cout << sizeof(a)<<endl;   //数组大小    for(int i=0; i < sizeof(a); i++)    {        if((a[i] >= 'a' && a[i] <= 'z') )    //如果是小写字母        {            smallcount[a[i] - 'a']++;   //此字母次数加1        }        else if(a[i] >= 'A' && a[i] <= 'Z')   //如果是大写字母        {            bigcount[a[i] - 'A']++;  //此字母次数加1        }    }    for(i=0;i<26;i++)    {        if(smallcount[i] != 0)        {            //输出每个[小]写字符出现的次数            cout<<"字母"<<char('a'+i)<<"出现的次数为:"<<smallcount[i]<<"次"<<endl;        }        if(bigcount[i] != 0)        {            //输出每个[大]写字符出现的次数            cout<<"字母"<<char('A'+i)<< "出现的次数为:"<<bigcount[i]<<"次"<<endl;         }    }    return 0;}

=================================================================

小知识点:sizeof操作符指出整个数组的长度;strlen()函数返回的是存储在数字中的字符串的长度,而不是数组本身的长度。另外,strlen()只计算可见的字符,而不把空字符(结束符\0)计算在内。

=================================================================

本人整理~转载请注明出处~


原创粉丝点击