我们输入一个字符串,中间有英文字母和英文的逗号如“terry,is,good”。写一个C++程序对该字符串进行处理,利用栈实现单词的反向输出,各单词之间通过回车隔开。
时间: 2024-03-27 22:35:07 浏览: 76
好的,以下是一个C++程序,实现了对输入字符串的处理,利用栈实现单词的反向输出,各单词之间通过回车隔开:
```c++
#include <iostream>
#include <stack>
#include <sstream>
using namespace std;
string reverseString(string s) {
stack<string> stk;
stringstream ss(s);
string word, res;
while (getline(ss, word, ',')) {
stk.push(word);
}
while (!stk.empty()) {
res += stk.top() + "\n";
stk.pop();
}
return res;
}
int main() {
string s = "terry,is,good";
cout << reverseString(s) << endl;
return 0;
}
```
程序的主要思路与Python程序相似,首先将输入的字符串按照逗号进行分割,得到单词列表,然后将单词依次压入栈中。最后将栈中的单词依次弹出,拼接成字符串并加上回车符,最终得到反向输出的结果。
运行程序,输出结果为:
```
good
is
terry
```
阅读全文