Drucken Eingabe-string die Wörter in umgekehrter Reihenfolge

Mit if und while /do - while mein job drucken folgende Benutzer Eingänge (string-Wert) in umgekehrter Reihenfolge.

Beispiel:

input-string-Wert : "sind Sie Amerikaner"
Ausgabe in umgekehrter Reihenfolge : "Amerikaner sind Sie"

Gibt es eine Möglichkeit, dies zu tun?

Habe ich versucht

string a;
cout << "enter a string: ";
getline(cin, a);
a = string ( a.rbegin(), a.rend() );
cout << a << endl;
return 0;

...aber dies würde die Umkehrung der Reihenfolge der Wörter und Rechtschreibung während Rechtschreibung ist nicht das, was ich bin going.

Ich sollte auch hinzufügen, die in if und while Aussagen, haben aber keine Ahnung wie.

  • Natürlich es ist.
  • string a; cout << "geben Sie einen string ein: "; getline(cin, a); a = string ( a.rbegin(), ein.rend() ); cout << a << endl; return 0; dies kehrt sich die GANZE Sache.. die Reihenfolge und die Schreibweise, aber ich will nicht mit der Rechtschreibung. ich donot wissen, wie ich hinzufügen, die in if und while statements..
  • Es würde helfen, wenn du deinen post versucht, code in der Frage selbst? Es ist ein klassisches problem, Sie haben versucht, die Suche nach es ebenso?
  • Fügen Sie, dass Ihre post statt der Kommentare die für eine bessere Formatierung.
  • Rückwärts die ganze Reihe, wie du tust, dann drehen Sie jedes Wort. Es wäre extrem einfach und effizient, wenn Sie benutzt eine Klasse wie llvm::StringRef.
  • ich habe, aber ich bin nicht so erfahren in der Programmierung. und ja, ich habe versucht, auf der Suche 🙁
  • Oft liegt der Schlüssel zur Lösung dieser Probleme ist die Beschreibung des Algorithmus in Worten, ohne zu denken in C++ (oder anderen Programmiersprachen). Wenn du beschreiben kannst, um einen älteren verwandten, wie dies mit einem Stift und Papier, Umwandlung dieser Beschreibung zu Ihrer Programmiersprache der Wahl ist viel einfacher.
  • Sie könnten die Spaltung der string in einen vector, dann Durchlaufen Sie den Vektor vom Ende zum Anfang.

InformationsquelleAutor user1940749 | 2013-01-01
Schreibe einen Kommentar