【メモ】文中の単語の逆順出力
3531 ワード
1 #include <iostream>
2 #include <string>
3 #include <stack>
4
5 using namespace std;
6 int main()
7 {
8 string str ="I live in cnblogs.com";
9 stack<char> cStack ;
10 for(int i=0,w=0;i <str.length(); i++)
11 {
12 if (str[i]==' '||i==str.length()-1)
13 {
14 if(i==str.length()-1 && str[i]!=' ') // 。
15 cStack.push(str[i]);
16 while (cStack.size() > 0) //
17 {
18 str[w] = cStack.top();
19 cStack.pop();
20 w++;
21 }
22 w = i + 1; //
23 }
24 else
25 {
26 cStack.push(str[i]);
27 }
28 }
29 cout<<str;
30 return 0;
31 }
要求:文中の単語の逆順序出力
入力:I live in coblogs.com
出力:Ievil ni moc.sgolbnc
このプログラムは新しいメモリ領域を申請しません.