使用string数组,以及内置sort快速排序
#include <iostream> #include <cstdio> #include <string> #include <algorithm> using namespace std; int main() { string str; while(getline(cin, str)) { if (str == "ENDOFINPUT") { break; } string sub[128]; int i = 0; while (i < str.size()) { int t = str.size() - i; sub[i].insert(0, str, i, t); i++; } sort(sub, sub + i); for (int k = 0; k < i; k++) { cout << sub[k] << endl; } } return 0; }