Ir para conteúdo
Fórum Script Brasil
  • 0

Como criar lista em C


Nilton Ribeiro

Pergunta

Bom dia, Boa tarde ou Boa Noite a todos...

Galera estou trabalhando em um projeto na facul onde tenho que pegar de um aquivo chamado Modelos.dat. E mostrar através de alguns critérios se elas estão aprovadas ou não, isto eu consegui fazer. Só que agora estou quebrando a cabeça em outra coisa. Preciso colocar somente as Modelos aprovadas em uma Lista e colocar em ordem alfabética :

Maria Bonita 1.70 50.0 18

Altura dentro dos padrões

Peso dentro dos padrões

Idade dentro dos padrões

Candidata aprovada

Obs: estando dentro deste seguintes métodos simples de ordenação (Bolha, Inserção ou Seleção).

Meu código onde faço a classificação das modelos é este e dele eu preciso jogar para uma lista e ordenar os nomes somente das aprovadas na ordem alfabética:

#include <conio.h>
#include <stdio.h>
#include <string.h>

int main()
{
    char nome[16];
    float altura,peso;
    int idade, result;
    
    altura = 0;
    peso = 0;
    idade = 0;

    FILE *arq;
    arq = fopen("Modelos.dat","r");
    if (arq == NULL)
    {
        printf("\nArquivo não encontrado");
        return 1;
    }
    printf("\nClassificacao das Modelos.\n\n");

    while(fgets(nome,16,arq)!=NULL)
    {
          fscanf(arq, "%f %f %i ",&altura,&peso,&idade);
          printf("\nCandidata: %s\n",nome);

          if(altura>=1.70 && altura<=1.85)
	  {
 	      printf("\nAltura dentro dos padroes.");
 	      altura = 1;
     	  }
          else
          {
              printf("\nAltura fora dos padroes.");
              altura = 0;
          }

          if(peso>=48.0 && peso<=60.0)
	  {
             printf("\nPeso dentro dos padroes.");
             peso = 1;
          }
	  else
	  {
	     printf("\nPeso fora dos padroes.");
	     peso = 0;
	  }

          if(idade>=17 && idade<=21)
	  {
             printf("\nIdade dentro dos padroes.");
             idade = 1;
          }
          else
          {
            printf("\nIdade fora dos padroes.");
            idade = 0;
          }
          
          result = altura + peso + idade;

          if(result == 3)
             printf("\nCandidata aprovada!!!.\n\n");
          else
             printf("\nCandidata reprovada!!!\n\n");
    }
fclose(arq);
getch();
return 0;
}

Ficarei grato se alguém puder dar um ponta pé inicial que possa me ajudar.

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...