在C++中,输入一个字符串,输出字符串中元音字母和辅音字母以及其它字符的个数
时间: 2024-11-03 11:13:23 浏览: 11
C++输入一个字符串,把其中的字符按照逆序输出的两种方法解析
在C++中,你可以创建一个函数来统计给定字符串中的元音、辅音和其他字符的个数。这里是一个简单的示例,我们将使用`cin`来获取用户输入的字符串,然后遍历它来区分各种类型的字符:
```cpp
#include <iostream>
#include <cctype> // 包含tolower()函数用于转小写
void countVowelsConsonantsOthers(std::string str) {
int vowels = 0, consonants = 0, others = 0;
// 将所有字符转换为小写以便统一处理
for (char c : str) {
char lower_c = tolower(c); // 转换为小写
if (isalpha(lower_c)) { // 检查是否为字母
if (lower_c == 'a' || lower_c == 'e' || lower_c == 'i' ||
lower_c == 'o' || lower_c == 'u') { // 元音检查
vowels++;
} else { // 辅音
consonants++;
}
} else { // 非字母字符
others++;
}
}
std::cout << "Vowels: " << vowels << ", Consonants: " << consonants << ", Others: " << others << std::endl;
}
int main() {
std::string input;
std::cout << "Enter a string: ";
getline(std::cin, input); // 获取包括空格的完整行作为输入
countVowelsConsonantsOthers(input);
return 0;
}
```
这个程序首先定义了三个计数器:`vowels`、`consonants` 和 `others`。然后遍历字符串中的每个字符,如果是字母,则进一步判断它是元音还是辅音;如果不是字母则增加`others`。最后,输出三种字符的数量。
阅读全文