Work in C "Bank" giving error

Asked

Viewed 56 times

0

Hello I am doing a work in c and is giving the following error: after I make the Deposit/ Withdrawal instead of going back to menu the program asks to type again.

main(){
  int matriz[5][2],i, j,b,dep,v,a,x,saq,sald;

  printf ("\nBEM VINDO AO BANCO DO BRUNO\n");

  for ( i=1; i<6; i++ ){

    for ( j=1; j<2; j++ )
    {
       printf ("\nDigite o numero da sua conta: ");
       scanf ("%d", &matriz[ i ][ j ]);
       printf("\n Digite o valor do saque inicial : ");
       scanf ("%d",&matriz[i][j+1]);
    }}
    do{

    printf ("\n 1. Efetuar um depósito em uma conta \n 2. Efetuar um saque de uma conta \n 3. Consultar o saldo de uma conta \n 4. Consultar o saldo geral \n 5. Finalizar o programa \n \n QUAL DESEJA ?? ");
    scanf("%d",&b);

     switch(b){
        case 1:
             printf("Digite o numero da conta : ");
             scanf("%d",&a);

            if(a==matriz[1][1]){

                printf("Digite o valor do deposito : ");
                 scanf ("%d",&v);
                dep=matriz[1][2]+v;

                printf("%d",dep);

             }
            else if(a==matriz[2][1]){

                printf("Digite o valor do deposito : ");
                 scanf ("%d",&v);
                dep=matriz[2][2]+v;

                printf("%d",dep);

             }
             if(a==matriz[3][1]){

                printf("Digite o valor do deposito : ");
                 scanf ("%d",&v);
                dep=matriz[3][2]+v;

                printf("%d",dep);

             }
             if(a==matriz[4][1]){

                printf("Digite o valor do deposito : ");
                 scanf ("%d",&v);
                dep=matriz[4][2]+v;

                printf("%d",dep);

             }
             if(a==matriz[5][1]){

                printf("Digite o valor do Deposito : ");
                 scanf ("%d",&v);
                dep=matriz[5][2]+v;

                printf("%d",dep);

             }
             else{
                printf("\n \n \n ESSA CONTA NAO EXISTE \n \n \n");
             }


             case 2:

             printf("Digite o numero da conta : ");
             scanf("%d",&a);

            if(a==matriz[1][1]){

                printf("Digite o valor do Saque : ");
                 scanf ("%d",&x);
                saq=matriz[1][2]-x;

                printf("%d",saq);

             }
             if(a==matriz[2][1]){

                printf("Digite o valor do Saque : ");
                 scanf ("%d",&x);
                saq=matriz[2][2]-x;

                printf("%d",saq);

             }
             if(a==matriz[3][1]){

                printf("Digite o valor do Saque : ");
                 scanf ("%d",&x);
                saq=matriz[3][2]-x;

                printf("%d",saq);

             }
             if(a==matriz[4][1]){

                printf("Digite o valor do Saque : ");
                 scanf ("%d",&x);
                saq=matriz[4][2]-x;

                printf("%d",saq);

             }
             else if(a==matriz[5][1]){

                printf("Digite o valor do Saque : ");
                 scanf ("%d",&x);
                saq=matriz[5][2]-x;

                printf("%d",saq);

             }
             else{
                printf("\n \n \n ESSA CONTA NAO EXISTE \n \n \n");
             }




             case 3:
                printf("Digite o numero da conta : ");
             scanf("%d",&a);

            if(a==matriz[1][1]){

                sald=matriz[1][2];

                printf("\n \n O seu Saldo e de : %d \n",sald);

             }
             if(a==matriz[2][1]){


                sald=matriz[2][2];

                printf("\n \n O seu Saldo e de : %d \n ",sald);

             }
             if(a==matriz[3][1]){


                sald=matriz[3][2];

                printf("\n \n O seu Saldo e de : %d \n ",sald);

             }
             if(a==matriz[4][1]){


                sald=matriz[4][2];

             printf("\n \n O seu Saldo e de : %d \n ",sald);

             }
             if(a==matriz[5][1]){


                sald=matriz[5][2];

                printf("\n \n O seu Saldo e de : %d \n ",sald);

             }
             else{
                printf("\n \n \n ESSA CONTA NAO EXISTE \n \n \n");
             }

     }
     }while (b<5);

    }`

1 answer

1

You forgot the break in the cases follows the tidy code below, the break causes that case to run and after that does not run any other, and runs the "do" again

main(){ int matriz[5][2],i, j,b,dep,v,a,x,saq,sald;

printf ("\nBEM VINDO AO BANCO DO BRUNO\n");

for ( i=1; i<6; i++ ){

for ( j=1; j<2; j++ )
{
   printf ("\nDigite o numero da sua conta: ");
   scanf ("%d", &matriz[ i ][ j ]);
   printf("\n Digite o valor do saque inicial : ");
   scanf ("%d",&matriz[i][j+1]);
}}
do{

printf ("\n 1. Efetuar um depósito em uma conta \n 2. Efetuar um saque de uma conta \n 3. Consultar o saldo de uma conta \n 4. Consultar o saldo geral \n 5. Finalizar o programa \n \n QUAL DESEJA ?? ");
scanf("%d",&b);

 switch(b){
    case 1:
         printf("Digite o numero da conta : ");
         scanf("%d",&a);

        if(a==matriz[1][1]){

            printf("Digite o valor do deposito : ");
             scanf ("%d",&v);
            dep=matriz[1][2]+v;

            printf("%d",dep);

         }
        else if(a==matriz[2][1]){

            printf("Digite o valor do deposito : ");
             scanf ("%d",&v);
            dep=matriz[2][2]+v;

            printf("%d",dep);

         }
         if(a==matriz[3][1]){

            printf("Digite o valor do deposito : ");
             scanf ("%d",&v);
            dep=matriz[3][2]+v;

            printf("%d",dep);

         }
         if(a==matriz[4][1]){

            printf("Digite o valor do deposito : ");
             scanf ("%d",&v);
            dep=matriz[4][2]+v;

            printf("%d",dep);

         }
         if(a==matriz[5][1]){

            printf("Digite o valor do Deposito : ");
             scanf ("%d",&v);
            dep=matriz[5][2]+v;

            printf("%d",dep);

         }
         else{
            printf("\n \n \n ESSA CONTA NAO EXISTE \n \n \n");
         }

         break;
         case 2:

         printf("Digite o numero da conta : ");
         scanf("%d",&a);

        if(a==matriz[1][1]){

            printf("Digite o valor do Saque : ");
             scanf ("%d",&x);
            saq=matriz[1][2]-x;

            printf("%d",saq);

         }
         if(a==matriz[2][1]){

            printf("Digite o valor do Saque : ");
             scanf ("%d",&x);
            saq=matriz[2][2]-x;

            printf("%d",saq);

         }
         if(a==matriz[3][1]){

            printf("Digite o valor do Saque : ");
             scanf ("%d",&x);
            saq=matriz[3][2]-x;

            printf("%d",saq);

         }
         if(a==matriz[4][1]){

            printf("Digite o valor do Saque : ");
             scanf ("%d",&x);
            saq=matriz[4][2]-x;

            printf("%d",saq);

         }
         else if(a==matriz[5][1]){

            printf("Digite o valor do Saque : ");
             scanf ("%d",&x);
            saq=matriz[5][2]-x;

            printf("%d",saq);

         }
         else{
            printf("\n \n \n ESSA CONTA NAO EXISTE \n \n \n");
         }



         break;
         case 3:
            printf("Digite o numero da conta : ");
         scanf("%d",&a);

        if(a==matriz[1][1]){

            sald=matriz[1][2];

            printf("\n \n O seu Saldo e de : %d \n",sald);

         }
         if(a==matriz[2][1]){


            sald=matriz[2][2];

            printf("\n \n O seu Saldo e de : %d \n ",sald);

         }
         if(a==matriz[3][1]){


            sald=matriz[3][2];

            printf("\n \n O seu Saldo e de : %d \n ",sald);

         }
         if(a==matriz[4][1]){


            sald=matriz[4][2];

         printf("\n \n O seu Saldo e de : %d \n ",sald);

         }
         if(a==matriz[5][1]){


            sald=matriz[5][2];

            printf("\n \n O seu Saldo e de : %d \n ",sald);

         }
         else{
            printf("\n \n \n ESSA CONTA NAO EXISTE \n \n \n");
         }





         break;

 }
 }while (b<5);

}

Browser other questions tagged

You are not signed in. Login or sign up in order to post.