joaopaulo19

Membros
  • Content Count

    1
  • Joined

  • Last visited

Community Reputation

0 Neutro

About joaopaulo19

  1. Olá pessoal, sou novo aqui no fórum. Não estou conseguindo ordenar uma lista em C, gostaria que vocês me ajudassem. Segue minha função de ordenação: void ordenaTempo(celula *lista) { int n, r, p,i,j; char s; float t; celula *aux, *aux2; int tam; tam = tamanho(lista); aux = lista; aux2 = lista->prox; for(i=1; i<tam-1;i++) { for(j=1;j<tam-i;j++) { if(aux->tempo_chegada > aux2->tempo_chegada) { n = aux->numero_atleta; r = aux->raia; t = aux->tempo_chegada; p = aux->numero_prova; s = aux->sexo; aux->numero_atleta = aux2->numero_atleta; aux->raia = aux2->raia; aux->tempo_chegada = aux2->tempo_chegada; aux->numero_prova = aux2->numero_prova; aux->sexo = aux2->sexo; aux2->numero_atleta = n; aux2->raia = r; aux2->tempo_chegada = t; aux2->numero_prova = p; aux2->sexo = s; } aux2=aux2->prox; } } lista = aux; for(aux2=lista; aux2!=NULL; aux2=aux2->prox) { printf("Numero atleta: %d \n",aux2->numero_atleta); printf("Raia: %d \n",aux2->raia); printf("Tempo chegada: %f \n",aux2->tempo_chegada); printf("Tempo chegada: %d \n",aux2->numero_prova); printf("sexo - ( %c ) \n\n",aux2->sexo); } } Essa aqui é minha estrutura: //Criando o tipo celula typedef struct no celula; //definindo a estrutura da celula struct no { int numero_atleta; int raia; float tempo_chegada; int numero_prova; char sexo; struct no *prox; };