Olá, preciso de uma ajuda em um programa em que você escolhe a quantidade de notas que será computada para cada aluno que será cadastrado, assim no final do programa tem que mostrar a media de cada nota (Ex: media nota 1 = 5.5, media nota 2 = 7.5) e assim tirar a media geral.
Agradeço desde já.
#include <stdio.h>
#include <stdlib.h>
#define TRUE 1
#define FALSE 0
#define bool int
#define MAX_NUMERO_NOTAS 12
#define MIN_COMPRIMENTO_NOME 3
#define MAX_COMPRIMENTO_NOME 20
#define MIN_NUMERO_ALUNO 100
#define MAX_NUMERO_ALUNO 1999
#define NOTA_MINIMA 0.0
#define NOTA_MAXIMA 10.0
#define NOTA_MINIMA_APROVACAO 6.0
#include "aluno.h"
int contAlunos = 0;
int numNotas ;
float medGeral = 0.0;
float medG = 0.0;
numNotas = lerNumeroNotas();
if(numNotas>0)
{
printf("Serao processadas %d notas por aluno.\n\n",numNotas);
bool repetir;
do
{
medGeral+=processaAluno(numNotas);
contAlunos++;
repetir=promptRepetir();
}
while(repetir);
medG=medGeral/contAlunos;
printf("\n");
printf("---------------------------------------------------------------------\n");
printf("Total de %d alunos processados.\n\n", contAlunos);
printf("---------------------------------------------------------------------\n");
printf("Media de Cada Nota:\n\n");
printf("---------------------------------------------------------------------\n");
printf("---------------------------------------------------------------------\n");
printf("Media Geral da Turma = %5.1f\n\n",medG);
printf("---------------------------------------------------------------------\n");
};
system("PAUSE");
return 0;
};
//Acredito que teria que tirar a media de cada nota separadamente desta função mas não sei bem como.
//Segue parte do parametro "aluno.h"
float mediaSimplesVetor(int n, float x[]) {
int i;
float soma=0.0;
for(i=0; i<n; i++) soma=soma+x[i];
return soma/n;
}
float processaAluno(int n) {
int numAluno;
char *nome;
char primNomeAluno[MAX_COMPRIMENTO_NOME+1];
char sobrNomeAluno[MAX_COMPRIMENTO_NOME+1];
float notaAluno[MAX_NUMERO_NOTAS];
float mediaAluno;
printf("---------------------------------------------------------------------\n");
numAluno = lerNumero();
nome = lerNome("nome",numAluno);
strcpy(primNomeAluno, nome);
nome = lerNome("sobrenome",numAluno);
strcpy(sobrNomeAluno, nome);
printf("\n");
printf("Serao processadas agora as notas do aluno %d, \"%s %s\"\n",numAluno, primNomeAluno, sobrNomeAluno);
int i;
for(i=0; i<n; i++) {
notaAluno[i] = lerNota(numAluno, i+1); // ler a nota i
};
mediaAluno = mediaSimplesVetor( n, notaAluno );
printf("\n");
printf("Media das %d nota do aluno %d = %5.1f\n", n, numAluno, mediaAluno);
if(NOTA_MINIMA_APROVACAO<=mediaAluno)
printf("Situacao do Aluno: APROVADO");
else
printf("Situacao do Aluno: REPROVADO");
printf("\n");
return mediaAluno;
}