Ir para conteúdo
Fórum Script Brasil

Maickon

Membros
  • Total de itens

    2
  • Registro em

  • Última visita

Sobre Maickon

Maickon's Achievements

0

Reputação

  1. Maickon

    Problema no laço While

    Olá, agora o programa já roda normal, mas o resultado está errado, vou analisar o algoritmo agora pra achar onde está o outro erro rsrs Brigadu :D
  2. Boa noite galera, sou novo aqui no fórum, e vim até aqui porque estou com um problema no meu algoritmo, ele le o primeiro nome e quando entra no laço while o programa da erro e aparece a mensagem " o programa parou de funcionar...", gostaria que vocês pudessem dar uma olhada no meu algoritmo e me ajudassem a encontrar o erro, para melhor entendimento do código vou colocar o exercício desse algoritmo abaixo; Fazer um algoritmo que receba o nome do aluno, a matrícula do aluno, a nota da primeira prova e a nota da segunda prova até que o nome do aluno seja igual a “FIM”. Imprima a matrícula dos alunos em ordem decrescente de acordo com as médias dos alunos. Meu código: #include <stdio.h> #include <string.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]); return 0; }
×
×
  • Criar Novo...