Buscar

pesquisa_media_alunos

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

#include <stdio.h>
#include <string.h>
void limpaBuffer(){
	setbuf(stdin,NULL);
}
//definicao da struct
typedef struct {
	int codigo;
	float nota1,nota2,nota3, mediaNotas;
	char mat[4];
	char nome[30];
	char status[15];
} turma;
//programa principal
main() {
FILE *bancoPesquisa;
turma aluno;
int i=48; 
char sair='\0';
bancoPesquisa = fopen("alunos.dat","wb+");
//gravar os dados digitados
	while (sair!='n'){
	
		aluno.codigo = i;
	
		printf("Qual sua Matricula ?\n");
 	limpaBuffer();
 	scanf("%s",&aluno.mat);
 	strupr(aluno.mat);
		printf("Qual seu Nome ?\n");
 	limpaBuffer();
 	scanf("%s",&aluno.nome);
 	strupr(aluno.nome);
		printf("Qual sua Nota_1 ?\n");
 	limpaBuffer();
		scanf("%f",&aluno.nota1);
		printf("Qual sua Nota_2 ?\n");
 	limpaBuffer();
		scanf("%f",&aluno.nota2);
		printf("Qual sua Nota_3 ?\n");
 	limpaBuffer();
		scanf("%f",&aluno.nota3);
		aluno.mediaNotas = (aluno.nota1 + aluno.nota2 + aluno.nota3) / 3;
		if(aluno.mediaNotas >= 8.5){
			strcpy(aluno.status , "Excelente");
		}
		
		if( (aluno.mediaNotas >= 7.0) && ( aluno.mediaNotas <8.5) ){
			strcpy(aluno.status , "Bom");
		}
		
		if(aluno.mediaNotas < 7.0){
			strcpy(aluno.status , "Preocupante");
		}
		fwrite(&aluno, sizeof(turma), 1, bancoPesquisa);
 	i++;
 	
 	printf("Digite n Para Encerrar Pesquisa...\n");
 	limpaBuffer();
		scanf("%c", &sair);
		
		if(i>50){
			printf("A Ficha dos Alunos ultrapassou de 50 Registros.\n");
			sair='n';
		}
	}
	fclose(bancoPesquisa);
// Abrir para a leitura do que esta no arquivo
 bancoPesquisa = fopen("alunos.dat","rb+");
 if (bancoPesquisa != NULL) {
 fread(&aluno, sizeof(turma), 1, bancoPesquisa);
 if (ferror(bancoPesquisa)) {
 printf("\nOcorreu um erro na leitura.");
 }
 while (!feof(bancoPesquisa)) { 
 		limpaBuffer();
 		printf("\n\nCodigo: %d|Matricula: %s|Nome: %s|Nota_1: %.2f|Nota_2: %.2f|Nota_3: %.2f|Media: %.2f|Status: %s|", aluno.codigo, aluno.mat, aluno.nome, aluno.nota1, aluno.nota2, aluno.nota3, aluno.mediaNotas, aluno.status);
 	fread(&aluno, sizeof(turma), 1, bancoPesquisa);
 } 
 } 
 fclose(bancoPesquisa);
}

Outros materiais