Sunteți pe pagina 1din 2

#include<stdio.

h> typedef struct {char zi; char luna; int an;} data; typedef struct {char ora_i; char min_i; } ora_intrare; typedef struct {char ora_e; char min_e;} ora_iesire; typedef struct { int nr_matricol; char nume[30]; char an; int grupa; char tip; data d; ora_intrare o_i; ora_iesire o_e;} vizita; void generare() {FILE *f,*g; vizita v; char s1[20],s2[20]; printf("Fisier 1: "); gets(s1); f=fopen(s1,"rb"); if(!f) printf("Nu exista fisierul introdus!"); else {printf("Fisier text:"); gets(s2); g=fopen(s2,"w"); fprintf(g,"Nr. matricol Nume An(1-5) Grupa Tip('B'/'L') Data.z i Data.luna Data.an Ora_intrare.ora Ora_intrare.min Ora_iesire.ora Ora_iesire.mi n\n"); fread(&v,sizeof(vizita),1,f); while(!feof(f)) {fprintf(g,"%i ",v.nr_matricol); fprintf(g,"%d ",v.nume); fprintf(g,"%d ",v.an); fprintf(g,"%i ",v.grupa); fprintf(g,"%d ",v.tip); fprintf(g,"%d ",v.d.zi); fprintf(g,"%d ",v.d.luna); fprintf(g,"%d ",v.d.an); fprintf(g,"%d ",v.o_i.ora_i); fprintf(g,"%d ",v.o_i.min_i); fprintf(g,"%d ",v.o_e.ora_e); fprintf(g,"%d\n",v.o_e.min_e); fread(&v,sizeof(vizita),1,f); } }fclose(g); fclose(f); }

void main() {FILE *f; int numar_matricol;

char s[20]; vizita v; printf("Nume fisier:"); gets(s); f=fopen(s,"rb+"); if (!f) printf("Fisierul nu exista!"); else {printf("Introduceti numarul matricol:"); scanf("%i", &numar_matric ol); while (!feof(stdin)) {fread(&v,sizeof(vizita),1,f); while((v.nr_matricol!=numar_matricol)&&(!feof(f))) fread(&v,sizeof(vizita),1,f); if(v.nr_matricol==numar_matricol) {printf("Ora iesire:\n"); printf("Ora: "); scanf("%d",&v.o_e.ora_e); printf("Minutul: "); scanf("%d",&v.o_e.min_e); fseek(f,ftell(f)-sizeof(vizita),0); fwrite(&v,sizeof(vizita),1,f);} printf("Introduceti numar matricol: "); scanf("%i", &numar_mat ricol); } } generare(); fclose(f); }

S-ar putea să vă placă și