Olá, boa noite, espero que estejam todo bem.
Olha só, estou tentando resolver a questão do vetor, que vai para Struct e depois ele tem que entrar na Função "media_notas", eu não consigo fazer a conexão entre o que é lido e o que é entrada na função.
A ordem do exercício é o seguinte:
" Implemente uma base de dados (utilizando estruturas) de alunos. Esta devem conter as informações de matrícula, curso, nome do aluno, idade, endereço e notas. Após, implemente um programa que o usuário passe essas informações e calcule a média e retorne a situação do aluno (aprovado ou reprovado), utilizando uma mensagem adequada."
Se alguém puder me ajudar, agradeço muito mesmo.
#include <stdio.h>
#include <stdlib.h>
#include <locale.h>
#include <time.h>
#include <math.h>
#include <string.h>
#define SIZE 10
typedef struct ALUNO
{
int matricula;
char curso[40];
char nome_aluno[40];
int idade;
char endereco[50];
float notas[SIZE];
int num;
float media_geral;
}ALUNO;
void printar(ALUNO *MATRICULA, ALUNO *CURSO, ALUNO *NOME_ALUNO, ALUNO *IDADE, ALUNO *ENDERECO)
{
setlocale(LC_ALL,"Portuguese");
printf("\n Matrícula....: %d \n", MATRICULA->matricula);
printf("\n Curso........: %s \n", CURSO->curso);
printf("\n Nome.........: %s \n", NOME_ALUNO->nome_aluno);
printf("\n Idade........: %i \n", IDADE->idade);
printf("\n Endereço.....: %s \n", ENDERECO->endereco);
}
void media_notas(ALUNO * NOTAS[], ALUNO *N)
{
int i = 0;
float soma_notas = 0, nota_media = 0;
for(i = 0; i < N->num; i++)
{
soma_notas = soma_notas + NOTAS[i]->notas[i];
}
nota_media = soma_notas/ i;
printf("\n A média das Notas do Aluno é igual a: %0.2f \n", nota_media);
if(nota_media >= 5.00)
{
printf("\n O aluno está APROVADO! \n");
}
else
{
printf("\n O aluno está REPROVADO! \n");
}
}
int main()
{
setlocale(LC_ALL,"Portuguese");
ALUNO MATRICULA, CURSO;
ALUNO NOME_ALUNO;
ALUNO IDADE, ENDERECO;
ALUNO NOTAS[SIZE], N;
ALUNO MEDIA;
printf("\n Digite o Número de Matrícula d@ Alun@: ");
scanf("%d", &MATRICULA.matricula);
fflush(stdin);
printf("\n Digite seu Curso: ");
fgets(CURSO.curso, 39, stdin);
fflush(stdin);
printf("\n Digite seu Nome: ");
fgets(NOME_ALUNO.nome_aluno, 39, stdin);
printf("\n Digite sua Idade: ");
scanf("%d", &IDADE.idade);
fflush(stdin);
printf("\n Digite seu Endereço: ");
fgets(ENDERECO.endereco, 49, stdin);
int i = 0;
printf("\n Digite o Número de Avaliações Realizadas \n");
scanf("%i", &N.num);
printf("\n Digite as Notas desse Aluno nas respectivas Avaliações: \n");
for (i = 0; i < N.num; i++)
{
scanf("%f", NOTAS[i].notas[SIZE]);
}
printar(&MATRICULA, &CURSO, &NOME_ALUNO, &IDADE, &ENDERECO);
media_notas(&NOTAS &N);
printf("\n");
system("pause");
return 0;
}