Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- #define MAX 1500
- typedef enum {vendido ,disponivel} ESTADO;
- typedef enum {gasolina, gasoleo, gas} COMBUSTIVEL;
- //struct que vai guardar a informação sobre cada carro
- typedef struct{
- char marca[20];
- char matricula[15];
- char dmatricula[10];
- COMBUSTIVEL t_comb;
- int cilindrada;
- float preco;
- ESTADO disponibilidade;
- }AUTOMOVEL;
- //struct que vai guardar a informação sobre cada cliente
- typedef struct{
- char nome[50];
- int num_ident;
- int nif;
- char morada[200];
- int tel;
- }CLIENTE;
- //struct que irá guardar a informação sobre cada venda
- typedef struct{
- CLIENTE nome;
- AUTOMOVEL carro;
- char dataVenda;
- float precoFinal;
- }VENDA;
- //Vectores que vão guardar as listagens
- typedef AUTOMOVEL VECTCAR[MAX];
- typedef CLIENTE VECTCLI[MAX];
- typedef VENDA VECTVEN[MAX];
- char menu(void);
- char menucarro(void);
- char menucliente(void);
- char menuvenda(void);
- CLIENTE editCli(VECTCLI clientes, int tclientes);
- CLIENTE insertCli(void);
- void showClient(VECTCLI v_clientes, int nclientes , char CliName);
- AUTOMOVEL insertAut(void);
- int main()
- {
- VECTCLI clientes;
- VECTVEN vendas;
- VECTCAR carros;
- char opcao,opcaocarro,opcaocliente,opcaovenda;
- do
- {
- opcao=menu();
- switch(opcao)
- {
- case '1':
- opcaocarro = menucarro();
- break;
- case '2':
- opcaocliente = menucliente();
- break;
- case '3':
- opcaovenda = menuvenda();
- break;
- }//switch
- printf("\n Pressione qualquer tecla para continuar");
- //getch();
- }while(opcao!='0');
- return 0;
- }
- char menu(void)
- {
- char opcao;
- do{
- //system("cls");
- printf("\n ########################");
- printf("\n # #");
- printf("\n # STANT DE AUTOMOVEL #");
- printf("\n # By Mike&Rubem #");
- printf("\n ########################");
- printf("\n\n 1 - Menu Carros");
- printf("\n 2 - Menu Clientes");
- printf("\n 3 - Menu Vendas");
- printf("\n 0 - Salvar e Sair");
- printf("\n\n Escolha uma opcao: ");
- scanf("%c", &opcao);
- if(opcao<'0' || opcao>'3')
- {
- printf("ERRO_ Opção inválida");
- //getch();
- }
- }while(opcao<'0' ||opcao>'3');
- return(opcao);
- }
- char menucarro(void)
- {
- char opcaocarro;
- int tautomovel = 0;
- VECTCAR v_automovel;
- do{
- //system("cls");
- printf("\n 1 - Inserir Carro");
- printf("\n 2 - Visualizar Informacao de um carro");
- printf("\n 3 - Editar Carro");
- printf("\n 4 - Listar Carro");
- printf("\n 5 - Pesquisar Carro pela matricula");
- printf("\n 0 - Sair do Menu Carro");
- printf("\n\n Escolha uma opcao: ");
- fflush(stdin);
- scanf("%c", &opcaocarro);
- if(opcaocarro<'0' || opcaocarro>'5')
- {
- printf("ERRO: Opcao invalida");
- //getch();
- }else{
- switch (opcaocarro) {
- case '1':
- v_automovel[tautomovel++] = insertAut();
- break;
- case '2':
- break;
- case '3':
- break;
- default :
- break;
- }
- }
- }while(opcaocarro<'0' ||opcaocarro>'5');
- return(opcaocarro);
- }
- char menucliente(void)
- {
- char opcaocliente;
- int tclientes = 0;
- VECTCLI v_clientes;
- char nome[25];
- do{
- //system("cls");
- printf("\n 1 - Inserir Cliente");
- printf("\n 2 - Editar Cliente");
- printf("\n 3 - Listar Cliente");
- printf("\n 4 - Pesquisar Cliente por nome");
- printf("\n 0 - Sair do Menu Cliente");
- printf("\n\n Escolha uma opcao:");
- fflush(stdin);
- scanf("%c", &opcaocliente);
- if(opcaocliente<'0' || opcaocliente>'4')
- {
- printf("ERRO: Opcao invalida");
- //getch();
- }else{
- switch (opcaocliente) {
- case '1':
- v_clientes[tclientes++] = insertCli();
- break;
- case '2':
- break;
- case '3':
- printf("Introduza o nome do Cliente:");
- gets(nome);
- showClient(v_clientes,tclientes,nome);
- break;
- default :
- break;
- }
- }
- }while(opcaocliente<'0' ||opcaocliente>'4');
- return(opcaocliente);
- }
- char menuvenda(void)
- {
- char opcaovenda;
- do{
- //system("cls");
- printf("\n 1 - Inserir Venda");
- printf("\n 2 - Total Facturado");
- printf("\n 3 - Vendas Ultimo mes");
- printf("\n 4 - Vendas mais alta");
- printf("\n 5 - Vendas mais baixa");
- printf("\n 6 - Percentagem de vendas por combustivel");
- printf("\n 7 - Vendas de um cliente");
- printf("\n 0 - Sair do menu vendas");
- printf("\n\n Escolha uma opcao: ");
- scanf("%c", &opcaovenda);
- if(opcaovenda<'0' || opcaovenda>'7')
- {
- printf("ERRO: Opcao invalida");
- //getch();
- }
- }while(opcaovenda<'0' ||opcaovenda>'7');
- return(opcaovenda);
- }
- //Inserir Cliente
- //Editar Cliente");
- //Listar Cliente");
- //Pesquisar Cliente por nome
- CLIENTE insertCli(void){
- CLIENTE info;
- printf("Insira o nome do cliente:");
- scanf("%s", info.nome);
- printf("Introduza o número do cartao de cidadão/BI:");
- scanf("%d", &info.num_ident);
- printf("Introduza o NIF do cliente");
- scanf("%d", &info.nif);
- printf("Introduza a morado do cliente:");
- scanf("%s", info.morada);
- printf("Introduza o telefone/telemovel do cliente:");
- scanf("%d", &info.tel);
- return(info);
- }
- //funcao auxiliar para correr o vector de clientes
- void listCli(CLIENTE client_info){
- printf("Nome do Cliente: %s", client_info.nome);
- printf("Morada do Cliente: %s", client_info.morada);
- printf("Nif do cliente: %d", client_info.nif);
- printf("BI do cliente: %d", client_info.num_ident);
- printf("Número de telefone do cliente: %d", client_info.tel);
- }
- //função que vai pesquisar um cliente pelo nome
- void showClient(VECTCLI v_clientes, int nclientes , char CliName){
- int i, flag;
- for (i=0;i<nclientes;i++){
- flag = strcmp(v_clientes[i].nome , CliName )
- printf("As informações sobre o cliente são as seguintes:");
- listCli(v_clientes[i]);
- }else{
- printf("Nome não encontrado!");
- }
- }
- }
- //Inserir Carro
- AUTOMOVEL insertAut(void){
- AUTOMOVEL infoA;
- printf("Insira a marca do carro: ");
- scanf("%s", infoA.marca);
- printf("Introduza a matricula do carro: ");
- scanf("%s", &infoA.matricula);
- printf("Introduza a data da primeira matricula: ");
- scanf("%d", &infoA.dmatricula);
- printf("Introduza o combustivel do carro: ");
- scanf("%s", infoA.t_comb);
- printf("Introduza a cilindrada do carro: ");
- scanf("%d", &infoA.cilindrada);
- printf("Introduza o preco do carro: ");
- scanf("%2.f", &infoA.preco);
- printf("Introduza o estado do carro: ");
- scanf("%s", &infoA.disponibilidade);
- return(infoA);
- }
Add Comment
Please, Sign In to add comment