C++实现统计元音字母个数的函数开发及建议
### 🍎代码实现 ```cpp #include <iostream> #include <string> // 统计元音字母个数的函数 void countVowels(const std::string& str) { int countA = 0; int countE = 0; int countI = 0; int countO = 0; int countU = 0; // 遍历字符串中的每个字符 for (char c : str) { switch (c) { case 'a': countA++; break; case 'e': countE++; break; case 'i': countI++; break; case 'o': countO++; break; case 'u': countU++; break; default: break; } } // 输出每个元音字母的个数 std::cout << countA << std::endl; std::cout << countE << std::endl; std::cout << countI << std::endl; std::cout << countO << std::endl; std::cout << countU << std::endl; } int main() { std::string input; std::cin >> input; countVowels(input); return 0; } ``` ### 🔍代码解释 1. **函数定义**:定义了一个名为 `countVowels` 的函数,该函数接受一个 `std::string` 类型的常量引用作为参数。 2. **变量初始化**:在函数内部,初始化了五个整型变量 `countA`、`countE`、`countI`、`countO` 和 `countU`,用于记录每个元音字母的出现次数。 3. **遍历字符串**:使用范围 `for` 循环遍历输入字符串中的每个字符。 4. **统计元音字母**:使用 `switch` 语句判断当前字符是否为元音字母,如果是,则对应的计数器加 1。 5. **输出结果**:依次输出每个元音字母的出现次数。 6. **主函数**:读取用户输入的字符串,并调用 `countVowels` 函数进行统计。 ### 💡开发建议 - **错误处理**:当前代码假设输入仅由小写字母构成。如果需要处理更复杂的输入,可以在读取输入后添加输入验证逻辑,确保输入只包含小写字母。 - **扩展性**:如果需要统计更多的元音字母(如大写元音字母),可以修改 `switch` 语句或使用更灵活的数据结构(如 `std::map`)来存储元音字母和对应的计数器。 - **代码复用**:将统计元音字母的逻辑封装在一个函数中,方便在其他地方复用。 ######[AI写代码神器 | 648点数解答 | 2026-08-15 20:55:29]
- Python 实现球类:精准计算半径、表面积与体积,附输入验证与异常处理!(阿里通义 | 261点数解答 | 2024-11-28 21:19:39)561
- C 语言实现链表操作:创建、输出、删除及插入功能详解(字节豆包 | 534点数解答 | 2024-12-09 21:33:48)431
- C语言实现链表创建、输出、删除与插入操作的完整代码及注意要点(字节豆包 | 609点数解答 | 2024-12-18 12:18:21)451
- 星际编码大赛终极对决:机械星AI与异星人激战“逆序对”统计难题(字节豆包 | 509点数解答 | 2025-04-19 17:33:00)354
- C++实现滑动窗口最大值问题及开发建议(字节豆包 | 946点数解答 | 2026-08-15 16:07:43)6
- 使用C++解决滑动窗口最大值查找问题的实现与优化(字节豆包 | 555点数解答 | 2026-08-15 16:08:05)6
- C++实现滑动窗口最大值输出的解决方案及开发建议(字节豆包 | 718点数解答 | 2026-08-15 16:10:19)5
- C语言实现:从压缩字符串还原出原始字符串的代码解析(字节豆包 | 299点数解答 | 2024-11-10 19:31:07)338
- C语言:从“长度+字母”压缩串还原原始字符串的代码实现(GPT | 600点数解答 | 2024-11-14 18:24:57)222
- C语言实现:从压缩字符串到解压字符串的巧妙转换(讯飞星火 | 638点数解答 | 2024-11-14 18:25:06)367
- 51 单片机:定时器 0 实现 8 个 LED 循环点亮,附代码及优化建议(字节豆包 | 1193点数解答 | 2024-12-27 15:10:29)477
- C++ 实现游戏赢家判断:巧妙找出满足和条件的最大数 (DeepSeek | 506点数解答 | 2025-06-20 16:18:09)185