Estrutura Aviao
Artigos Científicos: Estrutura Aviao. Pesquise 862.000+ trabalhos acadêmicosPor: robson.siqueira • 28/9/2014 • 1.659 Palavras (7 Páginas) • 209 Visualizações
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
/*Typedef struct pode estar fora do main... eu acho melhor de ver*/
typedef struct voo{
char numero[4];
char aeroportoDecolagem[3];
char aeroportoPouso[3];
char horas[2];
char minutos[2];
int somaMinutos;
}voo;
int main (void)
{
int qt,contador,id,inicio,fim;
char info[19];
char infoAtual[13];
char *result = NULL;
char *result2 = NULL;
char temp[11];
char buscaAirDeco[3];
char buscaAirPouso[3];
int buscaSomaMinutos;
int resposta;
int resultadoHoras;
int resultadoMinutos;
voo *str;
gets(temp);
sscanf(temp, "%i", &qt);
//Alocagem dinâmica no vetor str
str = malloc (qt * sizeof(voo));
//Pegando dados para armazenar no vetor str
for(contador=0;contador<qt;contador++)
{
gets(info);
result = strtok(info," ");
id = 0;
while (result != NULL)
{
if(id == 0)
{
strcpy(str[contador].numero,result);
id++;
}
else if(id == 1)
{
strcpy(str[contador].aeroportoDecolagem,result);
id++;
}
else if(id == 2)
{
strcpy(str[contador].aeroportoPouso,result);
id++;
}
else if(id == 3)
{
result2 = strtok(result,":");
while (result2 != NULL)
{
if(id == 3)
{
str[contador].somaMinutos = 0;
str[contador].somaMinutos = atoi(result2) * 60;
id++;
}
else if(id == 4)
{
str[contador].somaMinutos = str[contador].somaMinutos + atoi(result2);
id++;
}
result2 = strtok(NULL,":");
}
}
result = strtok(NULL," ");
}
}
//Ordenando com o Quick Sort
inicio = 0;
fim = qt;
quickSort(str, inicio, fim);
//Enquanto não acabar a entrada
/*while(!feof(stdin))
{*/
//Coletando dados para a pesquisa
gets(infoAtual);
//Usando o STRTOK para quebra da string capturada
result = strtok(infoAtual," ");
id = 0;
while (result != NULL)
{
if(id == 0)
{
// Não sei porquê, mas o buscaAirDeco não está armazenando a string.
// Portanto, foi retirado do filtro para o funcionamento do programa.
strcpy(buscaAirDeco,result);
id++;
}
else if(id == 1)
{
strcpy(buscaAirPouso,result);
id++;
...