Implementação de Passagens Aereas
Por: bauer100 • 24/10/2015 • Abstract • 2.041 Palavras (9 Páginas) • 235 Visualizações
Implementação da Estrutura passagem (structpassagem) código fonte
#include
#include
#include
#include "biblioteca_voebem_passagem.h"
main()
{
int op,testa;
passagem passagem;
do
{
op=menu();
switch(op)
{
case 1:
lis = cria_lista();
if (lis != NULL)
{
printf("\n\t\tMemoria rezervada!\n\n");
system("pause");
}
break;
case 2:
cadastra_passagem(passagem);
break;
case 3:
testa = lista_vazia(lis);
if (testa == -1)
{
printf("\n\n\t\tErro. lista nao existe.\n\t\tTente novamente depois criar a lista.\n\n");
system("pause");
}
else
{
exibepassagem(lis);
}
break;
case 4:
testa = lista_vazia(lis);
if (testa == -1)
{
printf("\n\t\tLista nao existe!\n\n");
system("pause");
}
else if(testa == 0)
{
printf("\n\t\tLista vazia!\n\n");
system("pause");
}
else
{
testa=removepassagem(lis);
if (testa == 1)
{
printf("\n\t\tDados removidos com sucesso!\n\n");
system("pause");
}
}
break;
case 5:
libera_lista(lis);
break;
default:
printf("\n\t\tOpcao Invalida\n\n");
system("pause");
}
}
while(op!=5);
system("pause");
}
int menu()
{
int i=0,op;
system("cls");
printf("\n\n");
printf("\n\t\t\t\xDB");
for(; i<29; i++)
{
printf("\xDB");
}
printf("\xDB\xDB\xDB\xDB\xDB\xDB\xDB\xDB\xDB\xDB\xDB\xDB\xDB\xDB\xDB");
printf("\n\t\t\t\xDB C O N T R O L E - D E - P A S S A G E N S \xDB");
printf("\n\t\t\t\xDB\xDB\xDB\xDB\xDB\xDB\xDB\xDB\xDB\xDB\xDB\xDB\xDB\xDB\xDB");
i=0;
for(; i<29; i++)
{
printf("\xDB");
}
printf("\xDB");
printf("\n\n\t\t1 - Criar lista\n\t\t2 - Cadastrar passagem");
printf("\n\t\t3 - Consultar lista de passagens \n\t\t4 - Remover passagem");
printf("\n\t\t5 - Sair");
printf("\n\n\t\tOpcao: ");
scanf("%d",&op);
fflush(stdin);
return op;
}
Lista* cria_lista()
{
lis = (Lista*) malloc(sizeof(Lista));
if (lis != NULL)
{
lis->qtd = 0;
}
return lis;
}
void libera_lista(Lista* lis)
{
free(lis);
}
int lista_cheia(Lista* lis)
{
if(lis == NULL)
{
return -1;
}
else
{
return (lis->qtd == TAM);
}
}
int lista_vazia(Lista* lis)
{
if(lis == NULL)
{
return -1;
}
else if(lis->qtd == 0)
{
return 0;
}
}
void cadastra_passagem(passagem passagem)
{
system("cls");
int confirmaCadastro;
printf("Informe o numero do passagem: ");
scanf("%d",&passagem.numeroDapassagem);
printf("Informe o numero do voo: ");
scanf("%d",&passagem.numeroDoVoo);
fflush(stdin);
printf("Informe a data do embarque: ");
gets(passagem.dataDoVoo);
printf("Informe o horario do embarque: ");
gets(passagem.horaEmbarque);
printf("Informe o numero do portao de embarque: ");
scanf("%d",&passagem.portaoDeEmbarque);
fflush(stdin);
confirmaCadastro = insere_na_lista(lis,passagem);
if (confirmaCadastro == 1)
{
printf("\n\nDados cadastrados com sucesso\n\n");
...