rendered paste body#include <stdio.h>#include <string.h>#define N 20#define M 2void fillblanks(char *s, int x);float calcavg(FILE *f);void writeheadings(FILE *f);void writetotals(FILE *f, int n, float mo);void getdata();main(){ FILE *fp,*data; char ch,epitheto[N],onoma[N]; float grade[M],average,v1; int i; getdata(); fillblanks(epitheto, N); fillblanks(onoma, N); fp=fopen("eisagwgi.txt","r"); writeheadings(data); while(fscanf(fp,"%s",epitheto)!=EOF) { fscanf(fp,"%s ",&onoma); average=calcavg(fp); data=fopen("data.txt","a"); fprintf(data,"%s",epitheto); for(i=0;i<N-strlen(epitheto);i++) { fprintf(data," "); } fprintf(data,"%s",onoma); for(i=0;i<N-strlen(onoma);i++) { fprintf(data," "); } fprintf(data,"%.3f",average); fprintf(data,"\n"); fclose(data); for(i=0;i<M;i++) fscanf(fp,"%f",&v1); } fclose(fp); i=0; fp=fopen("data.txt","r"); do { ch=getchar(); if(ch=='\n') { i+=1; } } while(ch!='EOF'); fclose(fp); fp=fopen("data.txt","r"); v1=0; average=0; while( fscanf(&data, "%s%s%f", epitheto, onoma, &average)!= EOF ) { v1+=average; } average=v1/(i-1); fclose(fp); writetotals(&data,i-1,average); system("pause");}void getdata() { FILE *fp; char epitheto[N]; char onoma[N]; float grade; int i; fp = fopen("eisagwgi.txt", "w"); printf("Dwse to epitheto: "); scanf("%s", epitheto); while (strcmp(epitheto, "*")) { fprintf(fp, "%s", epitheto); printf("Dwse onoma: "); scanf("%s", onoma); fprintf(fp, " %s ", onoma); for (i=0; i<M; i++) { printf("Dwse thn %di vathmologia: ", i+1); scanf("%f", &grade); fprintf(fp, "%f ", grade); } fprintf(fp, "\n"); printf("Dwse to epitheto: "); scanf("%s", epitheto); } fclose(fp);}void fillblanks(char *s, int x){ int i; for(i=strlen(s)+1;i<x;i++) { s[i]=' '; }}float calcavg(FILE *f){ char name[N],last[N]; FILE *data; float x,sum=0; int i; f=fopen("eisagwgi.txt","r"); fscanf(f,"%s ",name); fscanf(f,"%s ",last); for(i=0;i<M;i++) { fscanf(f,"%f ",&x); printf("To x einai: %f\n",x); sum+=x; } fclose(f); return(sum/M);}void writeheadings(FILE *f){ int i; f=fopen("data.txt","w"); fprintf(f,"Epitheto:"); for(i=0;i<N-strlen("epitheto:");i++) fprintf(f," "); fprintf(f,"Onoma:"); for(i=0;i<N-strlen("onoma:");i++) fprintf(f," "); fprintf(f,"Mesos Oros:"); fprintf(f,"\n"); fclose(f);}void writetotals(FILE *f, int n, float mo){ f=fopen("data.txt","a"); fprintf(f,"\nOi foitites einai: %d\n",n); fprintf(f,"O mesos oros tis taksis einai: %f\n",mo); fclose(f);}