C++编程,输入一个仅包含小写英文字母的字符串,请问这个字符串的最后一个元音是什么
时间: 2024-06-13 21:09:01 浏览: 185
以下是C++编程实现,用于确定给定字符串中的最后一个元音字母:
```cpp
#include <iostream>
#include <string>
using namespace std;
int main() {
string str;
getline(cin, str); // 读取输入的字符串
char lastVowel = ' '; // 初始化最后一个元音字母为空格
for (int i = str.length() - 1; i >= 0; i--) { // 从字符串末尾开始遍历
char c = tolower(str[i]); // 将字符转换为小写字母
if (c == 'a' || c == 'e' || c == 'i' || c == 'o' || c == 'u') { // 判断是否为元音字母
lastVowel = c; // 更新最后一个元音字母
break; // 找到最后一个元音字母后退出循环
}
}
cout << "The last vowel in the string is: " << lastVowel << endl; // 输出最后一个元音字母
return 0;
}
```
相关问题
C++输入一个仅包含小写英文字母的字符串,请问这个字符串中的最后一元音是什么。
```cpp
#include <iostream>
#include <string>
using namespace std;
bool isVowel(char c) {
return c == 'a' || c == 'e' || c == 'i' || c == 'o' || c == 'u';
}
int main() {
string s;
getline(cin, s);
char lastVowel = ' ';
for (int i = s.size() - 1; i >= 0; i--) {
if (isVowel(s[i])) {
lastVowel = s[i];
break;
}
}
cout << lastVowel << endl;
return 0;
}
```
--相关问题--:
1. 如何判断一个字符是否为元音字母?
2. 如何在C++
题目描述 返回给定字符串s中元音字母的首次出现位置。英语元音字母只有‘a’、‘e’、‘i’、‘o’、‘u’五个。 若字符串中没有元音字母,则输出0。 只考虑小写的情况。 输入格式 输入一个仅含小写字母的字符串,长度不超过20位 输出格式 按题意输出位置或输出0
题目描述:
给定一个仅含小写字母的字符串,长度不超过20位,要求返回该字符串中元音字母的首次出现位置。如果字符串中没有元音字母,则输出0。
英语元音字母只有 'a'、'e'、'i'、'o'、'u' 五个。只考虑小写的情况。
输入格式:
输入一个仅含小写字母的字符串,长度不超过20位。
输出格式:
按题意输出位置或输出0。
输入样例:
```
hello
```
输出样例:
```
2
```
题目思路:
这道题目的思路就是遍历字符串中的每个字符,判断其是否为元音字母,如果是,则返回对应元音字母的位置。如果遍历完字符串还没有找到元音字母,则返回0。
代码实现如下(使用C++语言):
```
#include <iostream>
#include <string>
using namespace std;
int main() {
string s;
cin >> s; // 读入字符串
for (int i = 0; i < s.size(); i++) { // 遍历字符串中的每个字符
if (s[i] == 'a' || s[i] == 'e' || s[i] == 'i' || s[i] == 'o' || s[i] == 'u') {
cout << i + 1 << endl; // 如果是元音字母,则输出位置
return 0;
}
}
cout << 0 << endl; // 如果没有元音字母出现,则输出0
return 0;
}
```
这个程序可以输出字符串中元音字母的首次出现位置,如果字符串中没有元音字母,则输出0。
阅读全文