找出字符串中每个字符出现的次数,用C++
时间: 2024-11-20 10:38:11 浏览: 25
C++找出字符串中出现最多的字符和次数,时间复杂度小于O(n^2)
在C++中,你可以使用`std::map`或者`std::unordered_map`来计算字符串中每个字符出现的次数。这里是一个简单的例子,使用`std::map`:
```cpp
#include <iostream>
#include <map>
#include <string>
void countCharacters(const std::string& str) {
std::map<char, int> charCount;
for (char c : str) {
if (c >= 'a' && c <= 'z') // 只考虑小写字母,可根据需要修改
charCount[c]++;
else if (c >= 'A' && c <= 'Z')
charCount[tolower(c)]++; // 转换大写并计数
}
for (const auto& pair : charCount) {
std::cout << "字符 '" << pair.first << "' 出现了 " << pair.second << " 次\n";
}
}
int main() {
std::string input = "Hello, World!";
countCharacters(input);
return 0;
}
```
在这个程序中,我们遍历输入的字符串,对于每一个字符,检查其是否是字母,并更新`std::map`中的计数。最后打印出每个字符及其对应的出现次数。
阅读全文