#include #define N 20 #define M 1 void getdata(struct candidate *cnd); int read19(struct candidate *cand); int read20(struct candidate *cand); struct candidate { int code,test; char name[N]; float v1,v2; int category; }; main() { struct candidate cand; FILE *fp,*f; int sum19,sum20; getdata(&cand); sum19=read19(&cand); sum20=read20(&cand); system("pause"); } void getdata(struct candidate *cnd) { int i,j; FILE *fp,*f; fp=fopen("inPE19.txt","w"); f=fopen("inPE20.txt","w"); for(i=0;icategory ); } while(cnd->category!=1 && cnd->category!=2); if(cnd->category==1) { printf("Dwse ton kwdiko: "); scanf("%d",&cnd->code); fprintf(fp,"%d",cnd->code); fprintf(fp," "); printf("Dwse epitheto: "); scanf("%s",cnd->name); fprintf(fp,"%s",cnd->name); for(j=strlen(cnd->name);jv1); } while(cnd->v1<0 || cnd->v1>100); fprintf(fp,"%f",cnd->v1); fprintf(fp," "); do { printf("Dwse ton deftero vathmo: "); scanf("%f",&cnd->v2); } while(cnd->v2<0 || cnd->v2>100); fprintf(fp,"%f",cnd->v2); fprintf(fp," "); fprintf(fp,"%d",cnd->category); fprintf(fp,"\n"); } else { printf("Dwse ton kwdiko: "); scanf("%d",&cnd->code); fprintf(f,"%d",cnd->code); fprintf(f," "); printf("Dwse epitheto: "); scanf("%s",cnd->name); fprintf(f,"%s",cnd->name); for(j=strlen(cnd->name);jv1); } while(cnd->v1<0 || cnd->v1>100); fprintf(f,"%f",cnd->v1); fprintf(f," "); do { printf("Dwse ton deftero vathmo: "); scanf("%f",&cnd->v2); } while(cnd->v2<0 || cnd->v2>100); fprintf(f,"%f",cnd->v2); fprintf(f," "); fprintf(f,"%d",cnd->category); fprintf(f,"\n"); } } fclose(fp); fclose(f); } int read19(struct candidate *cand) { FILE *fp,*f,*f2; int sum=0; fp=fopen("inPE19.txt","r"); f=fopen("epitPE19.txt","w"); f2=fopen("apotPE19.txt","w"); while(fscanf(fp,"%d",&cand->code)!=EOF) { sum++; fscanf(fp,"%s",cand->name); fscanf(fp,"%f",&cand->v1); if(cand->v1>=55) { fscanf(fp,"%f",&cand->v2); if(cand->v2>=55) { if((cand->v1+cand->v2)/2>=60) { fscanf(fp,"%d",&cand->category); fprintf(f,"%d%s%f%f%d\n",cand->code,cand->name,cand->v1,cand->v2,cand->category); printf("pernaei\n"); } else { fscanf(fp,"%d",&cand->category); fprintf(f2,"%d%s%f%f%d\n",cand->code,cand->name,cand->v1,cand->v2,cand->category); printf("mikros mesos oros"); } } else { fscanf(fp,"%d",&cand->category); fprintf(f2,"%d%s%f%f%d\n",cand->code,cand->name,cand->v1,cand->v2,cand->category); printf("mikros b vathmos\n"); } } else { fscanf(fp,"%f,%d",&cand->v2,&cand->category); fprintf(f2,"%d%s%f%f%d\n",cand->code,cand->name,cand->v1,cand->v2,cand->category); printf("mikros a vathmos"); } } fclose(fp); fclose(f); fclose(f2); return sum; } int read20(struct candidate *cand) { FILE *fp,*f,*f2; int sum=0; f=fopen("epitPE20.txt","w"); fp=fopen("inPE20.txt","r"); f2=fopen("apotPE20.txt","w"); while(fscanf(fp,"%d",&cand->code)!=EOF) { sum++; fscanf(fp,"%s",cand->name); fscanf(fp,"%f",&cand->v1); if(cand->v1>=55) { fscanf(fp,"%f",&cand->v2); if(cand->v2>=55) { if((cand->v1+cand->v2)/2>=60) { fscanf(fp,"%d",&cand->category); fprintf(f,"%d%s%f%f%d\n",cand->code,cand->name,cand->v1,cand->v2,cand->category); } else { fscanf(fp,"%d",&cand->category); fprintf(f2,"%d%s%f%f%d\n",cand->code,cand->name,cand->v1,cand->v2,cand->category); } } else { fscanf(fp,"%d",&cand->category); fprintf(f2,"%d%s%f%f%d\n",cand->code,cand->name,cand->v1,cand->v2,cand->category); } } else { fscanf(fp,"%f,%d",&cand->v2,&cand->category); fprintf(f2,"%d%s%f%f%d\n",cand->code,cand->name,cand->v1,cand->v2,cand->category); } } fclose(fp); fclose(f); fclose(f2); return sum; }