2016-05-28 28 views
-3

Zurück zum Menü mit Fall im Schaltergehäuse ohne GOTO-Befehl. Das ist also die Probe:Zurück zum Menü mit Fall im Schaltergehäuse in C

while(1){ 
    printf("1: Basic Math\n2. Intermediate Math\n3. Advance Math"); 
    printf("Enter your choice: "); 
    int choice; 
    scanf("%d", &choice); 

    switch(choice) 
    int theChoices; 
    case 1: 
     printf("1. Add\n 2. Subtract\n3. Go back to menu"); 
     scanf("%d", &theChoices); 

     switch (theChoices) { 
     case 1: 
      //calculation ... 
     case 2: 
      //calculation ... 
     case 3: 
      // Go Back to menu which is Basic math, Intermediate Math, Advance math 
      // ***** I want to know how do i get back to the main menu. ***** 
    case 2: 
    // .... 
// .................... 

Also noch einmal meine Frage ist, wie ich sie zurück in das Menü mit dem Fall 3. Wenn ich die Keyword-Pause Versuchen Sie es mit, es automatisch das Programm schließen, wenn ich wählte Fall 3. Bitte helfen Sie.

+0

'while ((option = show_menu_and_return_option())! = QUIT_OPTION) ...' –

+0

Ich stimme diese Frage als off-topic zu schließen, weil es ** keine Mühe zeigt **. * Bitte versuchen Sie + zuerst suchen *. – gsamaras

+0

Ihr Code ist unvollständig. Switch-Anweisung nicht geschlossen. Dupliziere 'Fall 2:'. Sie zeigen nicht, wie Sie mit 'case 1:' umgehen und 'case 2:' was ich vermute, gibt definiertes Verhalten. – user3078414

Antwort

1

Verwenden Sie stattdessen continue;. Es wird aus allen case s springen und weiterhin Code nach ihnen ausführen, wodurch das Programm in die erste Zeile nach while (1) zurückkehren wird. Vergessen Sie nicht, jedes case mit einem break; zu schließen.

+0

Sir die Fortsetzung-Taste wird nur auf den inneren Schalter gehen, nicht das Menü –

+0

@ Big.D, vergessen Sie nicht zu schließen _each_ 'case' mit einem' break; ' – ForceBru

+0

sir ich nur mein Problem zu lösen. anstatt geschachtelten Switch Case zu verwenden. Ich benutze else-if. dann continue;. Vielen Dank –