21xrx.com
2024-11-24 22:18:16 Sunday
登录
文章检索 我的文章 写文章
C++统计字符串中字母出现次数
2023-07-05 07:38:25 深夜i     --     --
C++ 统计 字符串 字母 出现次数

在C++语言中,统计字符串中字母出现次数是一个常见的问题。统计字母出现次数可以帮助我们更好地理解字符串的特征,也可用于分析文本和模式匹配等应用。

下面是一个简单的C++程序,统计一段文本中各个字母出现的次数:


#include<iostream>

#include<string>

using namespace std;

int main()

{

  string str = "Hello, world! This is a sample text.";

  int count[26] = {0}; // 用数组存储字母出现次数

  // 遍历整个字符串

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

  {

    // 将所有字母都转换成大写

    char c = toupper(str[i]);

    // 只统计A~Z中的字母

    if (c >= 'A' && c <= 'Z')

    {

      count[c - 'A']++; // 对应字母的计数器加1

    }

  }

  // 输出各字母出现次数

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

  {

    if (count[i] > 0)

    {

      cout << (char)(i + 'A') << ": " << count[i] << endl;

    }

  }

  return 0;

}

上述程序首先定义一个字符串`str`,然后定义一个大小为26的数组`count`,用于统计各个字母出现次数。接着,程序遍历整个字符串`str`,将所有字母都转换成大写,然后对A~Z中的字母进行计数。最后,程序输出各字母出现次数。

运行以上程序,将输出以下结果:


E: 3

H: 1

I: 4

L: 4

O: 4

R: 2

S: 3

T: 6

W: 1

以上结果表明,`str`中E出现3次,H、I、L、O、S分别出现1、4、4、4、3次,R出现2次,T出现6次,W出现1次。

总之,统计字符串中字母出现次数是一项基础但常见的任务。利用C++中的字符串和数组,我们可以方便地完成这个任务。

  
  

评论区

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