每行输用switch语句编写程序,统计输入的一串字母中元音字母(a、e、i、o、u)的总个数和每个元音字母出现的次数,当输入“#”时,输入结束。出8个数,分5行输出。
时间: 2024-10-27 21:11:39 浏览: 31
Count:计数元音,辅音,符号和数字的程序
在C++中,你可以使用`switch`语句配合`std::string`和变量计数器来实现这个功能。以下是一个简单的示例程序:
```cpp
#include <iostream>
#include <string>
int main() {
std::string input;
int vowel_count[5] = {0}; // 初始化元音计数器数组
char current_vowel;
while (true) {
std::cout << "请输入一个字符或输入'#'结束:" << std::flush;
getline(std::cin, input); // 使用getline获取整行输入,包括空格
if (input == "#") {
break; // 输入'#'时退出循环
}
for (char c : input) {
switch (tolower(c)) { // 转换为小写比较,以便不区分大小写
case 'a':
case 'e':
case 'i':
case 'o':
case 'u':
vowel_count[toupper(c) - 'A']++; // 根据大写元音更新计数
break;
default:
// 如果不是元音,则忽略
continue;
}
}
}
// 输出结果
for (int i = 0; i < 5; ++i) {
if (vowel_count[i]) {
std::cout << "元音 '" << static_cast<char>(i + 'A') << "' 出现了 " << vowel_count[i] << " 次\n";
} else {
std::cout << "元音 '" << static_cast<char>(i + 'A') << "' 未出现\n";
}
}
return 0;
}
```
这个程序首先定义了一个字符串变量`input`用于存储用户的输入,以及一个数组`vowel_count`来记录每个元音的出现次数。然后在一个无限循环中,直到用户输入`#`为止。
在内层循环中,我们遍历输入的每一个字符,使用`switch`根据字符是否为元音来增加对应的计数。转换为小写后进行比较,方便处理大小写问题。
最后,我们遍历`vowel_count`数组并输出每个元音及其出现次数,如果该位置的计数为0则表示该元音没有出现。
阅读全文