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

Escreva um algoritmo que leia 250 valores representando a média final dos alunos de Lógica de Programação e o nome do respectivo aluno, neste trimestre. Ao final o algoritmo deve imprimir o nome do aluno que teve a maior nota e o nome do aluno que teve a menor nota.

Soluções para a tarefa

Respondido por nilzon
0

#include <stdio.h>

typedef struct sAlunos{

char nome[20];

float media;

}Aluno;

int main(){

 

int ind_maior, ind_menor, i;

float media = 0, maior = 0, menor = 999999;

 

Aluno aluno[5]; // só alterar o tamanho do vetor pra 255 e o FOR    

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

 fflush(stdin);

 printf("Informe o nome do %d aluno: ", i+1);

 gets(aluno[i].nome);

 printf("Informe a media de %s: ", aluno[i].nome);

 scanf("%f", &aluno[i].media);    

 if(aluno[i].media > maior){

  maior = aluno[i].media;

  ind_maior = i;

 }else if(aluno[i].media < menor){

  menor = aluno[i].media;

  ind_menor = i;

 }

}  

printf("O aluno com a maior média é: %s - Media: %.2f\n", aluno[ind_maior].nome, maior);

printf("O aluno com a menor média é: %s - Média: %.2f\n", aluno[ind_menor].nome, menor);  

return 0;

}

Perguntas interessantes