I am creating a game of the three tracks but I can not go to the next question

-2

Hail Hail, all jewelry with you? I hope so, I have this code in C it is ok, but I am trying to implement more questions and I can not.

Follow the code:

#include<stdio.h>
#include<stdlib.h>
#include<time.h>
main()
{
    int n,pts=0;
    char resposta[100];
    printf("====Jogo das Tres Pista====\n\n");
    printf("1-Inicia jogo\n\n");
    printf("2-Creditos \n\n");
    printf("3-sair\n\n");
    printf("Digite sua Opcao");
    scanf("%i",&n);
    system("cls");
    switch(n)
    {
        case 1:
        printf ("Torres: ");
        scanf ("%s", &resposta);
        printf("PALAVRA DIGITADA: %s\n\n", resposta);
        if(!strcmp(resposta, "EUA")||!strcmp(resposta, "Eua")||!strcmp(resposta, "eua")||!strcmp(resposta, "EstadoUnido")){
            printf("Resposta Certa!, 10 pts!\n"); pts+=10;
            return 0;
        }else{
            printf("\n VOCE ERRO A PROXIMA DICA E DOLAR!, 0 pts \n\n!\n");
        }
        printf ("DOLAR: ");
        scanf ("%s", &resposta);
        printf("PALAVRA DIGITADA: %s", resposta);
        if(!strcmp(resposta, "EUA")||!strcmp(resposta, "Eua")||!strcmp(resposta, "eua")||!strcmp(resposta, "EstadoUnido")){
            printf("Resposta Certa!, 5 pts!\n"); pts+=5;
            return 0;
        }else{
            printf("\n VOCE ERRO A PROXIMA DICA E HOLLYWOOD!, 0 pts \n\n!\n");
        }
        printf ("HOLLYWOOD!: ");
        scanf ("%s", &resposta);
        printf("PALAVRA DIGITADA: %s", resposta);
        if(!strcmp(resposta, "EUA")||!strcmp(resposta, "Eua")||!strcmp(resposta, "eua")||!strcmp(resposta, "EstadoUnido")){
            printf("Resposta Certa!, 2 pts!\n"); pts+=2;
        }else{
            printf("\n VOCE ERRO RESPOSTA CERTA SERIA EUA VAMOS EM FRENTE!, 0 pts \n\n!\n");
        }
        system("pause");
        system("cls");
        case 2:
        printf("*** CREDITOS ***\n\n BY: <<< GEOVANI >>>\n\n");
        break;
        case 3:
        printf("*** ACABOU O JOGO ***\n\n");
        break;
        default:
        printf("*** Obrigado por usa nosso sistema ***\n");
    }
}

Can someone tell me how to go to the next question without closing the program

    
asked by anonymous 15.01.2018 / 22:14

2 answers

0

The program closes because you do return 0 after if. I think what you intended was:

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


int main()
{
  int n,pts=0;
  char resposta[100];
  printf("====Jogo das Tres Pista====\n\n");
  printf("1-Inicia jogo\n\n");
  printf("2-Creditos \n\n");
  printf("3-sair\n\n");
  printf("Digite sua Opcao");
  scanf("%i",&n);
  system("cls");
  switch(n)
  {
    case 1:
    printf ("Torres: ");
    scanf ("%s", &resposta);
    printf("PALAVRA DIGITADA: %s\n\n", resposta);
    if(!strcmp(resposta, "EUA")||!strcmp(resposta, "Eua")||!strcmp(resposta, "eua")||!strcmp(resposta, "EstadoUnido")){
        printf("Resposta Certa!, 10 pts!\n"); pts+=10;
        //return 0;//return ternmina o programa
    }else{
        printf("\n VOCE ERRO A PROXIMA DICA E DOLAR!, 0 pts \n\n!\n");
    }
    printf ("DOLAR: ");
    scanf ("%s", &resposta);
    printf("PALAVRA DIGITADA: %s", resposta);
    if(!strcmp(resposta, "EUA")||!strcmp(resposta, "Eua")||!strcmp(resposta, "eua")||!strcmp(resposta, "EstadoUnido")){
        printf("Resposta Certa!, 5 pts!\n"); pts+=5;
        //return 0;
    }else{
        printf("\n VOCE ERRO A PROXIMA DICA E HOLLYWOOD!, 0 pts \n\n!\n");
    }
    printf ("HOLLYWOOD!: ");
    scanf ("%s", &resposta);
    printf("PALAVRA DIGITADA: %s", resposta);
    if(!strcmp(resposta, "EUA")||!strcmp(resposta, "Eua")||!strcmp(resposta, "eua")||!strcmp(resposta, "EstadoUnido")){
        printf("Resposta Certa!, 2 pts!\n"); pts+=2;
    }else{
        printf("\n VOCE ERRO RESPOSTA CERTA SERIA EUA VAMOS EM FRENTE!, 0 pts \n\n!\n");
    }
    system("pause");
    system("cls");
    case 2:
    printf("*** CREDITOS ***\n\n BY: <<< GEOVANI >>>\n\n");
    break;
    case 3:
    printf("*** ACABOU O JOGO ***\n\n");
    break;
    default:
    printf("*** Obrigado por usa nosso sistema ***\n");
}

}

    
16.01.2018 / 06:16
-1

To use as many if else in the game will leave you very confused, but following the system you are using would be below your ERROR REPLY SURE ...

You'd better call a new one when the user chooses to START GAME which contains the questions, in a simplistic way you would make several copies of it and only change the answers type

case 1: Question1 (); Question2 (); Question3 ();

so he would ask one question after another then I would ask the questions like this

Pergunta1(){
    printf ("Torres: ");
    scanf ("%s", &resposta);
    printf("PALAVRA DIGITADA: %s\n\n", resposta);
    if(!strcmp(resposta, "EUA")||!strcmp(resposta, "Eua")||!strcmp(resposta, "eua")||!strcmp(resposta, "EstadoUnido")){
        printf("Resposta Certa!, 10 pts!\n"); pts+=10;
        return 0;
    }else{
        printf("\n VOCE ERRO A PROXIMA DICA E DOLAR!, 0 pts \n\n!\n");
    }
    printf ("DOLAR: ");
    scanf ("%s", &resposta);
    printf("PALAVRA DIGITADA: %s", resposta);
    if(!strcmp(resposta, "EUA")||!strcmp(resposta, "Eua")||!strcmp(resposta, "eua")||!strcmp(resposta, "EstadoUnido")){
        printf("Resposta Certa!, 5 pts!\n"); pts+=5;
        return 0;
    }else{
        printf("\n VOCE ERRO A PROXIMA DICA E HOLLYWOOD!, 0 pts \n\n!\n");
    }
    printf ("HOLLYWOOD!: ");
    scanf ("%s", &resposta);
    printf("PALAVRA DIGITADA: %s", resposta);
    if(!strcmp(resposta, "EUA")||!strcmp(resposta, "Eua")||!strcmp(resposta, "eua")||!strcmp(resposta, "EstadoUnido")){
        printf("Resposta Certa!, 2 pts!\n"); pts+=2;
    }else{
        printf("\n VOCE ERRO RESPOSTA CERTA SERIA EUA VAMOS EM FRENTE!, 0 pts \n\n!\n");
    }}
    
15.01.2018 / 23:27