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; data=fopen("data.txt","r"); v1=0; average=0; i=0; fseek(fp, 51, 0); while( fscanf(data, "%s%s%f", epitheto, onoma, &average)!= EOF ) { v1+=average; i++; } average=v1/i; printf("average=%f",average); fclose(data); writetotals(&data,i,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);}