Ajuda com esse programa.

1. Ajuda com esse programa.

thiarle
thiarleanderson

(usa Outra)

Enviado em 11/11/2017 - 16:17h









olá, sou novo no fórum e gostaria de ajuda nesse script, em partes ele funciona porém o resultado não bate com as opções.
Alguém poderia me ajudar.


#include <stdio.h>
#include "stdafx.h"
int main();

//int i=0, j=0;
char tecla;
struct cadastro_cliente

{
int cod;
char nome[40];
char rua[30];
int numero;
char cpf;
int cnh;
char bairro[30];
char cidade[30];
int codigocar;
}cliente;
int client = 0;
int j = 0;

struct cadastro_cliente Cliente[50];
struct cadastro_carro

{
int codcar;
char modelo[20];
char marca[15];
char placa[15];
int tipocarro;
double valor, finaldeloc;
int valorlocacao;//funcao nova
int status;
// int tipocarro;
int locar;
}carro;
int i = 0;
int w = 0;
int q = 0;
int b = 0;

struct cadastro_carro Carro[50];
int cad_cliente(void);
int list_cliente(void);
int cad_carro(void);
int tipodocarro(void);
int tipo_do_carro(void);
//int tipocarro(void);
int loc_carro(void);
int mostra_clientes(void);
int devo_carro(void);
int dias(void);//funcao nova
int valor(void); //funcao nova
//int calc(void){

//}
int cad_cliente()
{
int i;
// printf("Cadastro %d de 50\n", j);
// if (j<=50)
for (i = j; i <= j; i++)
{
printf("Digite o codigo do Cliente: ");
scanf_s("%d", &Cliente[i].cod);
fflush(stdin);
printf("Digite o nome do Cliente: ");
fflush(stdin);
gets_s(Cliente[i].nome);
printf("Digite o CPF do Cliente: ");
scanf_s("%d", &Cliente[i].cpf);
fflush(stdin);
printf("Digite a CNH do Cliente: ");
scanf_s("%d", &Cliente[i].cnh);
fflush(stdin);
printf("Digite o nome da Rua: ");
gets_s(Cliente[i].rua);
fflush(stdin);
printf("Digite o numero da casa: ");
scanf_s("%d", &Cliente[i].numero);
fflush(stdin);
printf("Digite o nome do Bairro: ");
gets_s(Cliente[i].bairro);
fflush(stdin);
printf("Digite o nome da Cidade: ");
gets_s(Cliente[i].cidade);
printf("\n");
}
i++;
client = i;
return(0);
}
int list_cliente(void)
{
int k;
for (k = 0; k <= client; k++)
{
// system("cls");
printf("\nNome do Cliente: %s \n", Cliente[i].nome);
printf("\nNome do Cliente: %s \n", Cliente[i].cpf);
printf("\n Precione qualquer tecla pra sair");
//getch();
break;
k++;
}
return (0);
}
int tipo_do_carro(int tp)
{
double valor;
// 1 para basico, 2 para intemediario e 3 para executivo
if (tp == 1){
valor = 80.00;
}
if (tp == 2){
valor = 100.00;
}
if (tp == 3){
valor = 300.00;
}
if (tp == 0 || tp > 3){
printf("\ntipo de carro nao existe\n");
}
return(0);
}
int cad_carro(void)
{
printf("Cadastro de carro %d de 50\n", b);
if (b <= 50)
{
printf("Digite o codigo do veiculo: ");
scanf_s("%d", &Carro[b].codcar);
fflush(stdin);
printf("Digite o modelo do carro: ");
gets_s(Carro[b].modelo);
fflush(stdin);
printf("Digite a marca do carro: ");
gets_s(Carro[b].marca);
fflush(stdin);
printf("Digite a placa do carro: ");
gets_s(Carro[b].placa);
fflush(stdin);
printf("Tipo do Carro \n CARRO BASICO 1 \n CARRO INTERMEDIARIO 2\n CARRO EXECUTIVO 3 \n Digite o tipo do carro: ");
scanf_s("%d", &Carro[b].tipocarro);
printf("\nTipo:\n", &Carro[b].tipocarro);
fflush(stdin);
printf("Diaria (por dia): ");
scanf_s("%d", &Carro[b].locar);
fflush(stdin);
// int w = 0;
w = Carro[b].locar;
printf("\nTeste:\n", w);
fflush(stdin);
// int q = 0;
q = tipo_do_carro(Carro[b].tipocarro);
//q = q * w;
// printf("%d", &tipo_do_carro(Carro[i].tipocarro));
printf("%d", q);
}
b++;
return(0);
}
int loc_carro(void)
{
int k = 0;
char consulta[40];
char resposta;
int codi;
int dias; // valorfinaldeloc;//funcao nova
int valor; //funcao nova
double valorfinaldeloc;
fflush(stdin);
printf("Digite o nome do cliente que quer locar um veiculo: ");
gets_s(consulta);
//Reconsulta:
for (k = 0; k<50; k++)
{
if (consulta == Cliente[k].nome)
{
printf("Cliente cadastrado, deseja locar veiculo s/n: ");
scanf_s("%c", &resposta);
if (resposta == 's')
{
printf("Digite o codigo do Carro: ");
scanf_s("%d", &codi);
//quantos o cliente vai ficar com o carro.
printf("Quantos dias você deseja ficar com o carro?");
scanf_s("%d", &dias);
scanf_s("%d", &valor); //funcao nova
//recuperar o valor da diaricarro[k].valor;
//multiplicar a quantidade de dias pelo valor da diaria
valorfinaldeloc = Carro[i].valor*dias;
//printf("Valor de locação é %d "&valorfinaldeloc"!\n Deseja locar carro?");
printf("Valor de locação é R$%d !\n Deseja locar carro?", valorfinaldeloc);
Cliente[k].codigocar = codi;
Carro[k].status = 1; // quando tiver o status 1 é porque está locado.
//return(0);
};
};
};
printf("Cliente nao Cadastrado");
return(0);
}
int mostra_clientes(void)
{
for (j = 0; j<50; j++)
{
if (Cliente[j].codigocar != 0)
{
printf("Cliente: %c", Cliente[j].nome);
printf("Marca do veiculo: %c", Carro[j].marca);
}
}
return(0);
}
int devo_carro(void)
{
char dev, devolucao[40];
printf("Digite o Nome do Cliente que vai devolver o veiculo: ");
scanf_s("%c", &devolucao);
for (i = 0; i<50; i++)
{
if (devolucao == Cliente[i].nome)
{
printf("Realizar devolucao s/n? ");
scanf_s("%c", &dev);
if (dev == 's')
{
Cliente[i].codigocar = 0;
Carro[i].status = 0;
}
}
}
return(0);
}
int main(void)
{
// variavel opcao serve para o menu
int opcao = 0;
// signifa enquanto o menu for menor que 8 vai está em um loop do menu
while (opcao<8)
{
printf("\n\nLOCADORA DE VEICULOS\n");
printf("..................\n\n");
printf("1 - CADASTRAR CLIENTE\n");
printf("2 - LISTAR CLIENTES CADASTRADOS\n");
printf("3 - CADASTRAR CARRO\n");
printf("4 - LOCAR CARRO\n");
printf("5 - CLIENTES COM CARROS LOCADOS\n");
printf("6 - DEVOLUCAO DE CARRO\n");
printf("7 - SAIR\n");
printf("Escolha uma opcao:");
fflush(stdin);
scanf_s("%d", &opcao);
switch (opcao)
{
case 1: cad_cliente(); break;
case 2: list_cliente(); break;
case 3: cad_carro(); break;
case 4: loc_carro(); break;
case 5: mostra_clientes(); break;
case 6: devo_carro(); break;
//case 7: exit(0); break;
default: printf("\nopcao invalida - tecle <enter>");
fflush(stdin);
while ((tecla = getchar()) != '\r')
break;
}/*fim do swith*/
}/*fim do while*/
// getch();
return (0);
}



  






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts