Ir ao conteúdo
  • Cadastre-se

O que há de errado com meu código?


TButkus

Posts recomendados

Olá, estou fazendo um código test, que simula a montagem de um sistema de aluguel de carros. 

 




	#include <stdio.h>

	#include <math.h>

	#include <stdlib.h>

	int main()

	{

	    int pt, p1, p2, p3;

	    char M, T;

	    

	    p1=40;

	    p2=50;

	    p3=60;

	    

	    printf("Qual o modelo desejado?");

	  

	    printf("\nModelo A\nModelo B\nModelo C\nEscolha:");

	    

	    M = getchar();

	    

	   

	     switch (M)

	        {



	    case 'A': case 'a':

	        

	        system("clear");

	        printf("Este modelo custa %d reais a diária.", p1);

	        pt= p1;

	        break; 

	        

	    case 'B': case 'b':

	        

	       system("clear");

	       printf("Este modelo custa %d reais a diária.", p2);

	       pt= p2;

	        break;

	    

	    case 'C': case 'c':



	        system("clear");  

	        printf("Este modelo custa %d reais a diária.", p3);  

	        pt= p3;

	        break;

	            

	}



	    

	    

	     system("clear");

	     printf("Qual o tipo de cliente?\n1-Idoso\n2-Parceiro\n3-Comum\nTipo: ");

	       

	      T= getchar();

	 

	    switch(T)

	    {

	        case '1': 

	        printf(" Recebe 10 por cento de desconto.");

	        break;

	        

	        case '2':

	        printf("Recebe 5 por cento de desconto.");

	        break;

	            

	     case '3':

	        printf("Pagará o valor integral.");

	        break;

	    }

	    

	return 0;

	}



	[/CODE]


 

Quando eu compilo e executo, essa parte de entrar com o tipo do cliente (idoso, parceiro ou comum) encerra e não consigo entrar com o caracter que o define. O que há de errado?

Link para o comentário
Compartilhar em outros sites

Boa tarde, provavelmente o buffer está sendo usando no segundo getchar(), então, ou você usa fflush ou você usa um getchar antes de system("clear");  

Assim:

...

getchar();

system("clear");      

printf("Qual o tipo de cliente?\n1-Idoso\n2-Parceiro\n3-Comum\nTipo: ");

T= getchar();

...

  • Curtir 1
  • Obrigado 1
Link para o comentário
Compartilhar em outros sites

10 minutos atrás, TYSQUARE89 disse:

Boa tarde, provavelmente o buffer está sendo usando no segundo getchar(), então, ou você usa fflush ou você usa um getchar antes de system("clear");  

Assim:

...

getchar();

system("clear");      

printf("Qual o tipo de cliente?\n1-Idoso\n2-Parceiro\n3-Comum\nTipo: ");

T= getchar();

...

@TYSQUARE89 Realmente. Isso resolveu, obrigado.

Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...