Ir ao conteúdo

Posts recomendados

Postado

Pessoal preciso resolver o seguinte exercicio que segue em anexo :

 

 
 
#include <stdio.h>#include <conio.h> /*Criando a struct  */  struct ficha_de_aluno  {    char nome[50];    char disciplina[30];    float nota_prova1;    float nota_prova2;    }; struct ficha_de_aluno aluno[3];  float calculo(float a , float  {            	//for (int i=0;i<3;i++)		 // {          	 float soma=0,media;			 soma=a + b;          	 //soma=soma+aluno[i].nota_prova2;          	 media=soma/2;           	 fflush(stdin);			   //printf("Media Do %s ",aluno[i].nome);			   //printf("%f",media);			   return media;         // }                 }; int main(void){        	int i,*contador;  	char n; do{  printf("\n---------- Cadastro de aluno -----------\n\n\n");    printf("Nome do aluno ......: ");  fflush(stdin);   fgets(aluno[i].nome, 40, stdin);    printf("Disciplina ......: ");  fflush(stdin);   fgets(aluno[i].disciplina, 40, stdin);    printf("Informe a 1a. nota ..: ");  scanf("%f", &aluno[i].nota_prova1);    printf("Informe a 2a. nota ..: ");  scanf("%f", &aluno[i].nota_prova2);      printf("\n\n --------- Lendo os dados da struct ---------\n\n");  printf("Nome ...........: %s", aluno[i].nome);  printf("Disciplina .....: %s", aluno[i].disciplina);  printf("Nota da Prova 1 ...: %.2f\n" , aluno[i].nota_prova1);  printf("Nota da Prova 2 ...: %.2f\n" , aluno[i].nota_prova2);  printf("Deseja continuar cadastrando S/N ?");  scanf("%s",&n); i++;}while(n!= 'N');  //int *contador;//> Nome com no máximo 20 letras;for (int j=0;j<i;j++){ printf(" \n MEDIA %f %f" , calculo(aluno[i].nota_prova1,aluno[i].nota_prova2)); ////printf("%f",aluno[i].nota_prova1); //printf("%f",aluno[i].nota_prova2); //printf("%f" , calculo(aluno[i].nota_prova2));} //contador(n);  getch();  return(0);} 

Mas antes de tentar escrever no arquivo de fato, tenho que ter certeza que esta calculando as medias corretamente , mais não estou conseguindo retornar a media através da função deêm uma olhada!!!!!!

 

post-729888-0-02589300-1425783776_thumb.

Postado

Para escrever no arquivo você pode usar a função fprintf.

A função para calcular a média é bem simples

float media(float n1, float n2){    return (n1 + n2) / 2;}int main(){        fp = fopen("notas.txt", "w");    for(i = 0; i < 10; i++){        printf("Nome: ");        scanf("%s", aluno[i].nome);        printf("Nota 1: ");        scanf("%f", &aluno[i].nota1);        printf("Nota 2: ");        scanf("%f", &aluno[i].nota2);            fprintf(fp, "%.2f\n", media(aluno[i].nota1, aluno[i].nota2));    }    fclose(fp);        return 0;}
Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...