O Sistema de Gerenciamento de Notas em C
Por: flavioronquetti • 3/4/2017 • Trabalho acadêmico • 485 Palavras (2 Páginas) • 252 Visualizações
#include <stdio.h>
#include <string.h>
float calcmedia(float nota1,float nota2,float nota3,float nota4){ /*Função que calcula a media de todas as notas do aluno*/
float media;
nota1=nota1*1;
nota2=nota2*2;
nota3=nota3*3;
nota4=nota4*4;
media=(nota1+nota2+nota3+nota4)/10; /*Calculo da media ponderada*/
return (media);
}
void main(){
int opcao=30,matricula_referencia=1,cont=0,relatorio=0,troca=0;
float mediasala;
struct aluno{ /*Define o tipo aluno com as respectivas variaveis*/
float nota1,nota2,nota3,nota4,notasubs,media;
char nome[30], situacao[15];
int matricula;
};
struct aluno alunos[30];
fflush(stdin);/*Limpa o buffer do teclado*/
while (opcao!=0){ /*Menu de interação com o usuário*/
printf ("Escolha a opcao desejada: \n");
printf ("1 - Cadastrar aluno.\n");
printf ("2 - Relatorio de notas.\n");
printf ("0 - Sair.\n");
printf ("Opcao: ");
scanf ("%d", &opcao);
fflush(stdin);
if (opcao==1){ /*Cadastro de aluno*/
alunos[cont].matricula=matricula_referencia++;/*Gera automaticamente o numero de matricula para cada aluno sequencialmente*/
printf("\nEntre com o nome do aluno: ");
gets(alunos[cont].nome);
printf("\nEntre com a primeira nota do aluno: ");
scanf ("%f", &alunos[cont].nota1);
printf("\nEntre com a segunda nota do aluno: ");
scanf ("%f", &alunos[cont].nota2);
printf("\nEntre com a terceira nota do aluno: ");
scanf ("%f", &alunos[cont].nota3);
printf("\nEntre com a quarta nota do aluno: ");
scanf ("%f", &alunos[cont].nota4);
printf("\nEntre com a nota da prova substitutiva: ");
scanf ("%f", &alunos[cont].notasubs);
printf ("\n");
/*Troca a menor nota do aluno pela nota da prova substitutiva*/
troca=0;
if (troca==0&&alunos[cont].nota1<alunos[cont].nota2&&alunos[cont].nota1<alunos[cont].nota3&&alunos[cont].nota1<alunos[cont].nota4&&alunos[cont].nota1<alunos[cont].notasubs){
alunos[cont].media=calcmedia(alunos[cont].notasubs,alunos[cont].nota2,alunos[cont].nota3,alunos[cont].nota4); /*Passagem de parametros por valor para a função calcmedia*/
troca=1;
}
if (troca==0&&alunos[cont].nota2<alunos[cont].nota1&&alunos[cont].nota2<alunos[cont].nota3&&alunos[cont].nota2<alunos[cont].nota4&&alunos[cont].nota2<alunos[cont].notasubs){
alunos[cont].media=calcmedia(alunos[cont].nota1,alunos[cont].notasubs,alunos[cont].nota3,alunos[cont].nota4); /*Passagem de parametros por valor para a função calcmedia*/
troca=1;
}
if (troca==0&&alunos[cont].nota3<alunos[cont].nota1&&alunos[cont].nota3<alunos[cont].nota2&&alunos[cont].nota3<alunos[cont].nota4&&alunos[cont].nota3<alunos[cont].notasubs){
alunos[cont].media=calcmedia(alunos[cont].nota1,alunos[cont].nota2,alunos[cont].notasubs,alunos[cont].nota4); /*Passagem de parametros por valor para a função calcmedia*/
troca=1;
}
if
...