Ir para conteúdo
Fórum Script Brasil

Klaudia

Membros
  • Total de itens

    7
  • Registro em

  • Última visita

Posts postados por Klaudia

  1. oi, sei quase nada em c mais dei umas mexidas no seu código, ver se melhorou.

    aki tah compilando numa boa...

    #include <stdio.h>
    #include <string.h>
    #include <stdlib.h>
    
    int main()
    {
    
    char nome[20];
    float nota1[20],nota2[20],media[20];
    int matricula[20],i,maior_media=0,num_alunos=0,indice_maior=0,j=0,vet_decrescente[20];
    
    i=0;
    
    scanf("%s",&nome[i]);
    num_alunos++;
    
    while(strcmp(&nome[i],"FIM")!=0) /* le nomes, notas e matriculas enquanto nome for diferente de "FIM" */
    {
       scanf("%d",&matricula[i]);
       scanf("%f",&nota1[i]);
       scanf("%f",&nota2[i]);
    
       media[i]= (nota1[i]+nota2[i])/2;
    
       i++;
       
       scanf("%s",&nome[i]);
       num_alunos++;
    }
    
    for(i=0,j=0; i<(num_alunos-1); i++,j++) /* encontra a maior media das notas, e guarda o indice da maior media */
    {
       for(i=0; i<(num_alunos-1); i++)
       {
          if(media[i]>maior_media)
          {
             maior_media = media[i];
             indice_maior = i;
          }
       
       }
    
    i=j;
    vet_decrescente[i] = matricula[indice_maior]; /* guarda a matricula correspondente a maior media no vetor */
    media[indice_maior] = 0; /* e depois a maior media recebe 0 para que o programa encontre a nova maior media */
    
    }
    
    for(i=0; i<(num_alunos-1); i++) /* mostra as matriculas referentes as medias dos alunos que estao em ordem descrescente */
       printf("%d\n",vet_decrescente[i]);
    system("pause");
    
    }

×
×
  • Criar Novo...