如果是最後幾個直行的字串已經全印出來了,那就不要再印空白了,直接換行
以下我的程式碼:
#include<iostream>
#include<string>
using namespace std;
int main(){
string str[101];
int str_num = 0;
int len_max = 0;
while(getline(cin, str[str_num]) && str[str_num] != ""){
if(len_max < str[str_num].length())
len_max = str[str_num].length();
++str_num;
}
for(int i = 0; i < len_max; ++i){
int fuck = 0; // 最尾有幾直行已經不用再印出來
for(int j = 0; j < str_num; ++j){
if(str[j].length()-1 < i)
++fuck;
else
break;
}
for(int j = str_num-1; j >= fuck; --j){
if(str[j].length()-1 < i)
cout << " ";
else
cout << str[j][i];
}
cout << endl;
}
return 0;
}