Ir ao conteúdo
  • Cadastre-se

C Exercício (Switch case)


Seier

Posts recomendados

Bom gostaria de ajuda se possível para me ajudar em um exercício de c, o exercício pede para criar um programa de cadastramento de carros (máximo 200) que cadastre, liste e encerre (em um menu simples), onde C é pra cadastrar, L para verificar os carros cadastrados e E pra encerrar, lembrando que para cadastrar o carro é necessário informar a placa e o valor de aquisição e a placa não pode ter placa repetida (iguais).

 

Mas quando eu informo a identificação(placa e valor) do carro o programa acaba dando erro, também gostaria de saber como faço pra validar essa questão das placas iguais e ver a listagem dos carros..

 

Segue ate onde eu consegui: 

 

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>

int leValidaCarro(char placa, int valor);


int main() {
	
	char opcao;
	char placa;
	int valor;
	
	
	do{
		system ("cls");
		printf ("|================================|\n");
		printf ("|       SELECINE UMA OPCAO       |\n");
		printf ("|C.  Para cadastrar um novo carro|\n");
		printf ("|L.  Para ver a lisagem de carros|\n");
		printf ("|E.  Encerrar                    |\n");
		printf ("|================================|\n");
		
		printf ("\nInforme uma opcao(C ou L ou E): ");
		opcao = getch();
		//Menu de opções
		switch (opcao){
			//Cadastro de um novo veiculo
			case 'C':
			case 'c':	
				leValidaCarro(placa,valor);
				break;
			//Listagem de todos os veiculos
			case 'L':
			case 'l':
				printf ("\nLisagem de carros\n");
				break;
			//Encerramento do programa
			case 'E':
			case 'e':
				printf ("\n\n");
				printf ("\nREGISTRO ENCERRADO...\n");
				printf ("\n\n");
				break;
			//Caso a opcao seja invalida
			default:
				printf ("\nOpcao invalida\n");
				break;
		}	
		system ("PAUSE");
	}while(opcao != 'E' && opcao != 'e');
	
	
	return 0;
}

int leValidaCarro(char placa, int valor){
	
	printf ("\nCadastramento de um novo veiculo\n");
	printf ("\nInforme a placa do veiuculo: ");
	scanf ("%s",&placa);
	printf ("\nInforme o valor de aquisicao do veiculo: ");
	scanf ("%d",&valor);
	fflush(stdin);
	printf ("\nPlaca: %s\n", placa);
	printf ("\nValor: %d\n", valor);
	
	return 0;	
}

 

Link para o comentário
Compartilhar em outros sites

@Seier

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>
#include <conio.h>
int leValidaCarro(char placa, int valor);


int main() {
	
	char opcao;
	char placa;
	int valor;
	
	
	do{
		system ("cls");
		printf ("|================================|\n");
		printf ("|       SELECINE UMA OPCAO       |\n");
		printf ("|C.  Para cadastrar um novo carro|\n");
		printf ("|L.  Para ver a lisagem de carros|\n");
		printf ("|E.  Encerrar                    |\n");
		printf ("|================================|\n");
		
		printf ("\nInforme uma opcao(C ou L ou E): ");
		opcao = getch();
		//Menu de opções
		switch (opcao){
			//Cadastro de um novo veiculo
			case 'C':
			case 'c':	
				leValidaCarro(placa,valor);
				break;
			//Listagem de todos os veiculos
			case 'L':
			case 'l':
				printf ("\nLisagem de carros\n");
				break;
			//Encerramento do programa
			case 'E':
			case 'e':
				printf ("\n\n");
				printf ("\nREGISTRO ENCERRADO...\n");
				printf ("\n\n");
				break;
			//Caso a opcao seja invalida
			default:
				printf ("\nOpcao invalida\n");
				break;
		}	
		system ("PAUSE");
	}while(opcao != 'E' && opcao != 'e');
	
	
	return 0;
}

int leValidaCarro(char placa, int valor){
	
	printf ("\nCadastramento de um novo veiculo\n");
	printf ("\nInforme a placa do veiuculo: ");
	scanf ("%s",&placa);
	printf ("\nInforme o valor de aquisicao do veiculo: ");
	scanf ("%d",&valor);
	fflush(stdin);
	printf ("\nPlaca: %s\n", &placa);
	printf ("\nValor: %d\n", valor);
	
	return 0;	
}


 Seu erro tava nessa parte do final:
printf ("\nPlaca: %s\n", placa); // <~~
    printf ("\nValor: %d\n", valor);

"também gostaria de saber como faço pra validar essa questão das placas iguais e ver a listagem dos carros"
 •Pra fazer a listagem acho que você vai ter que salvar em um arquivo e depois ler e listar o que tem no arquivo
•E pra verificar se a placa ta repitida eu não sei, acho que vai ter que salva em uma struct e depois comparar

  • Curtir 1
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...