21xrx.com
2025-04-05 13:57:17 Saturday
文章检索 我的文章 写文章
C++如何计算字符串中每个字母的数量?
2023-07-03 19:11:37 深夜i     30     0
C++ 计算 字符串 字母数量

在C++中,要计算字符串中每个字母的数量,我们可以使用数组来存储每个字母出现的次数。具体步骤如下:

1.定义一个大小为26的整型数组,用来存储每个字母出现的次数,数组下标对应字母的ASCII码值减去小写字母a的ASCII码值。

2.遍历字符串中的每个字符,将其转换为小写字母,然后将相应的数组元素加1。

3.输出每个字母出现的次数,可以使用循环遍历数组,在屏幕上输出每个字母及其对应的数量。

以下是C++代码实现:

#include <iostream>
#include <string>
using namespace std;
int main()
{
  string str;
  int count[26] = {0}; //定义大小为26的整型数组
  cout << "请输入字符串: ";
  getline(cin, str); //读取整行字符串
  
  //遍历字符串中的每个字符
  for(int i = 0; i < str.size(); i++)
  {
    if(isalpha(str[i])) //判断是否为字母
    {
      char ch = tolower(str[i]); //将字符转换为小写字母
      count[ch-'a']++; //将相应的数组元素加1
    }
  }
  //输出每个字母出现的次数
  for(int i = 0; i < 26; i++)
  {
    if(count[i] != 0)
      cout << char(i+'a') << ": " << count[i] << endl;
  }
  return 0;
}

在程序运行过程中,输入一个字符串后,程序便会输出每个字母出现的次数。例如,输入“Hello World”,程序输出:

d: 1
e: 1
h: 1
l: 3
o: 2
r: 1
w: 1

  
  

评论区

请求出错了