int cont_alunos = 0, alunosPorSala = 0, cont_sala = 0, numeroSala = 0, salaMaiorMedia = 0;
float maiorMedia = 0, mediaGeral = 0, notaAluno = 0, somaNotas = 0,
mediaSala = 0, somaSala = 0, mediaGeralSalas = 0;
printf("Programa para processar uma lista de notas de alunos.\n");
printf("Entrar com o numero da sala e a respectiva nota do aluno.\n");
printf("Deseja saber qual e a media geral das notas de alunos.\n");
printf("Qual sala que obteve a melhor nota.\n");
printf("Qual a nota media das salas.\n\n");
printf("\nDigite (11) para mudar de sala: ");
printf("\nDigite (0) para finalizar o programa:\n\n ");
/*Entradas via teclado e calculos intermediarios*/
do
{
printf("\nDigite o numero da sala..........: ");
scanf("%d", &numeroSala);
if(numeroSala == 0)
break;
while(numeroSala > 0)
{
printf("\nDigite a nota do aluno......: ");
scanf("%f", ¬aAluno);
if(notaAluno == 11)
{
break;
}
else
{
if(notaAluno < 0 || notaAluno > 10)
{
printf("\nNota invalida, digite a nota entre 0 e 10:");
scanf("%f", notaAluno);
}
cont_alunos++;
somaNotas += notaAluno;
alunosPorSala++;
somaSala += notaAluno;
}
}
cont_sala++;
mediaSala = somaSala / alunosPorSala;
alunosPorSala = 0;
somaSala = 0;
mediaGeralSalas = ((mediaGeralSalas * (cont_sala - 1)) + mediaSala) / cont_sala;
if(mediaSala > maiorMedia)
{
maiorMedia = mediaSala;
salaMaiorMedia = numeroSala;
}
}
while(numeroSala != 0);
if(cont_alunos == 0)
printf("\nNao existe alunos cadastrados\n\n");
else
{
mediaGeral = somaNotas / cont_alunos;
printf("\n\nA media geral e': %.1f\n\n", mediaGeral);
printf("A sala que obteve melhor media foi a sala: %d\n\n", salaMaiorMedia);
printf("A media das salas e': %.1f\n\n", mediaGeralSalas);
printf("\n");
}