HDUOJ 1062 TEXT REVERSE

#include<iostream>
#include<stdlib.h>
#include <iomanip>
#include<stack>
using namespace std;

int main(){
    //次数
    int n = 0;
    while (cin >> n) {
        //这里需要读一个字符,需要消除换行符的影响
        getchar();
        while (n--) {
            char c;
            stack<char> stack;
            while (1) {
                c = getchar();
                if (c == ' ' || c == '
' || c == EOF) {//若遇到空格、换行符、EOF则反向输出
                    while (!stack.empty()) {
                        //先输出顶部的字符,再将其弹出
                        cout << stack.top();
                        stack.pop();
                    }
                    putchar(c); //这里c是空格、换行符、EOF中的一个,putchar出c保持输出格式正确
                    if (c == EOF || c == '
')//用于判断输入是否结束
                        break;
                }
                //若未遇到停止提示,则不断输入胡
                else stack.push(c);
            }
        }
    }
    return 0;
}
原文地址:https://www.cnblogs.com/DaiShuSs/p/9603061.html