Informática, perguntado por joaovitormitre, 11 meses atrás

faça um programa na linguagem c, que leia o nome e as distancias saltadas por 10 atletas.Ao final, escreva o nome dos 3 atletas com as melhores distancias,dentre os 10 concorrentes.Desconsiderar possibilidade de empate .

Soluções para a tarefa

Respondido por ReversedQuark
1

Resposta:

typedef struct Atleta{

     float dist;

     char[50] nome;

}Atleta;

int main ( ){

 int i,j;

 Atleta atletas[10];

 Atleta controle;

 for(i = 0; i < 10; i++){

      printf("Digite a distância do atleta %d:\n", i);

      scanf(" %f", &atletas[i].dist);

      printf("Digite o nome desse atleta: \n");

      gets(atletas[i].nome);

  }

  controle = atletas[0];

  for(j = 1; j < 9; j++){

     //ordena colocando as maiores distancias nas posições iniciais do vetor.

     if(controle.dist < atletas[i]){

        atletas[i-1] = atletas[i];

        atletas[i] = controle;

       }

       controle = atletas[i];

   }

   printf("Atletas vencedores:\n %s cuja distancia foi de:    %f\n",atletas[0].nome,atletas[0].dist);

  printf(" %s cuja distancia foi de: %f\n", atletas[1].nome,atletas[1].dist);

  printf("%s cuja distancia foi de: %f\n",atletas[2].nome,atletas[2].dist);

  return 0;

       

       

 

Perguntas interessantes