Wie man die Programm-Schleife, bis der Benutzer eine Eingabe bestimmte Anzahl

Im Grunde, ich muss ein Programm schreiben, wo das Programm fragt den Benutzer zur Eingabe bestimmter Anzahl zu erhalten in bestimmten Formen. Wie 1. für oval, 2 für Rechteck-und so auf das Programm zu halten benötigt, um dem Benutzer die Eingabe von Nummern ein, bis der Benutzer die Eingabe der Nummer 9 um das Programm zu beenden.
Dies der endgültige code in Turbo C

#include <stdio.h>
#include <conio.h>
#include <stdlib.h>

int main ()
{
clrscr();
 int x=0;

 while(x != 9)
 {
 printf ("Enter 1,2,3 and 4 for differeten shape and 9 to exit: ");
 scanf ("%d",&x);

 if (x == 1)
 {
     printf ( "*********\n"
   "*       *\n"
   "*       *\n"
   "*       *\n"
   "*       *\n"
   "*       *\n"
   "*       *\n"
   "*       *\n"
   "*********\n");
 }

 else if (x == 2)
 {
     printf ("   ***   \n"
   " *     * \n"
   "*       *\n"
   "*       *\n"
   "*       *\n"
   "*       *\n"
   "*       *\n"
   " *     * \n"
   "   ***   \n");
 }
 else if (x ==3)
  { printf( "    *    \n"
  "   ***   \n"
   "  *****  \n"
   "    *    \n"
   "    *    \n"
   "    *    \n"
   "    *    \n"
   "    *    \n"
   "    *    \n");
   }
   else if (x==4)
   {printf ("    *    \n"
   "   * *    \n"
   "  *   *   \n"
   " *     *  \n"
   "*       * \n"
   " *     *  \n"
   "  *   *   \n"
   "   * *    \n"
   "    *    \n");}

}
printf("The end\n");
system("pause");
return 0;
}
  • 1) Welche Sprache? 2) Was haben Sie bisher ausprobiert?
  • In C oder C++ verwendet man eine do ... while-Schleife. Aber wie BobTFish sagt, wählen Sie Ihre Sprache zuerst.
  • tatsächlich gibt es viele Möglichkeiten, dies zu tun.. z.B. loop dann eine ifelse-Anweisung innerhalb verarbeiten kann..
  • C-Sprache, Was ich versucht habe ist makin einer for-Schleife
  • Ok, also nicht tag C# und C++. "makin einer for-Schleife" ist in keiner Weise hilfreich. Poste den code, den Sie versucht haben, und sagen Sie uns, speziell was funktioniert nicht über Sie.
  • Auch eine for-Schleife ist die falsche Wahl. Eine for Schleife wird normalerweise benutzt, wenn Sie im Voraus wissen, wie viele Zeiten, die Sie wollen, um zu gehen um die Schleife. Das ist hier nicht der Fall, verwenden Sie eine do ... while-Schleife statt. Es ist perfekt für diese situation.
  • Ich bin nicht einverstanden. for ist mein go-to-Schleife, auch, wenn es nicht ein "für i in [0,10)" Stil zu konstruieren. Ich mag die Initialisierung, die Bedingung und iteration alle zusammen. Kann sein viel Reiniger als ein while, und ich fast nie verwenden do...while.
  • Ok, jetzt zu stoppen und darüber nachdenken. Für den Anfang print shape ist nicht gültig C, aber noch wichtiger ist, wie kann Sie erwarten, um eine Schleife, bis der Benutzer die Eingänge 9 wenn Sie nicht einmal den Versuch zu Lesen, die user-Eingabe? Wenn die Frage "wie lese ich die Benutzereingaben in C?", dann bitten (und es wird wahrscheinlich geschlossen, und Sie gelangen zu einem Buch oder tutorial, aber immer noch die Frage stellen, die Sie wirklich bedeuten).
  • das ist nur die grobe Vorstellung von dem, was ich versuche zu tun, nicht auf den code selbst. Im Grunde das, was im denken ist, indem Sie eine verschachtelte if-else if-bedingte in einer do-while-Schleife
  • Vielleicht eine switch statement.

InformationsquelleAutor user1852728 | 2013-11-12
Schreibe einen Kommentar