21xrx.com
2024-12-22 23:12:42 Sunday
登录
文章检索 我的文章 写文章
C++ 如何计算一串字符串中出现字母的次数?
2023-07-07 12:32:37 深夜i     --     --
C++ 计算 字符串 字母 次数

在 C++ 中,计算一串字符串中出现字母的次数可以通过遍历字符串、统计字母个数的方式实现。具体操作如下:

1. 定义一个整型数组 letter_counts,表示每个字母出现的次数,数组中下标为字母在字母表中的位置(例如字母 a 的位置为 0,字母 b 的位置为 1),数组元素为对应字母出现的次数。

2. 定义一个字符串 str,存储待统计字母个数的字符串。

3. 遍历字符串 str 中的每个字符,判断字符是否为字母:

  如果字符不是字母,则跳过该字符。

  如果字符是字母,则将该字母对应的 letter_counts 数组元素加 1。

4. 遍历 letter_counts 数组,输出每个字母出现的次数。

下面是一个具体实现的示例代码:

#include

#include

using namespace std;

int main()

{

  int letter_counts[26] = {0}; // 26 个字母

  string str;

  getline(cin, str); // 读入一行字符串

  for (int i = 0; i < str.length(); i++)

  {

    if (isalpha(str[i]))

    {

      letter_counts[tolower(str[i]) - 'a']++;

    }

  }

  for (int i = 0; i < 26; i++)

  {

    if (letter_counts[i] > 0)

    {

      cout << static_cast ('a' + i) << ": " << letter_counts[i] << endl;

    }

  }

  return 0;

}

在上面的代码中,我们使用了 C++ 中的 isalpha 函数进行判断是否为字母,使用了 tolower 函数将字母转为小写,然后通过减去 'a' 的方式计算字母在 letter_counts 中的下标。最后输出每个字母出现的次数。

总之,计算一串字符串中出现字母的次数在 C++ 中比较简单,只需要遍历字符串,统计字母个数即可。这种方法可以应用于许多场景,例如密码学、文本分析等。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复