Sunteți pe pagina 1din 6

#include<stdio.

h>

#include<conio.h>

typedef struct

char denumire[20];

float pret;

int cant[12];

char is;

}Produs;

void ListareBinToText(const char* numeBin,const char* numeText)

FILE* f, * g;

Produs p;

int i, n = 0;

g = NULL;

f = fopen(numeBin, "rb");

if (!f)printf("Fisierul bin nu s-a deschis");

else {

g = fopen(numeText, "w");

fprintf(g, "\nNR. Denumire %5s Pret Cant", "");

fread(&p, sizeof(Produs), 1, f);

while (!feof(f))

if (p.is)

fprintf(g, "\n%3d %-20s %6.2f", ++n, p.denumire, p.pret);

for (i = 0; i < 12; i++)

fprintf(g, "%3d", p.cant[i]);


}

fread(&p, sizeof(Produs), 1, f);

fclose(f);

fclose(g);

int main()

ListareBinToText("Produse.dat", "FisText01.txt");

return 0;

#include<stdio.h>

#include<conio.h>

#define freadb(x,f) fread(&(x),sizeof(Student),1,(f));//prescuratare pt fread

#define fwriteb(x,f) fwrite(&(x),sizeof(Student),1,(f));//prescuratare pt fwrite

typedef struct { //definire structura

int nr;//nr matricol, da unicitate pt cautare;

char nume[30];

int an;

int grupa;

int n;

int note[15];

}Student;

int main()
{

FILE* f, * g;

char s1[20];

int i, n;//n contor pt fiserul text ca prima coloana

Student s;

g = NULL;//initializare pointer

printf("Nume fis binar:");

gets_s(s1, 20);

f = fopen(s1, "rb");

//f=fopen("FisBin.dat","rb");//dau nume direct

if (!f)printf("Fis binar nu s-a deschis!");

else {

printf("Nume fis text");

gets_s(s1, 20);

g = fopen(s1, "w");

if (!g)printf("eroare");

else {

fprintf(g, "\nNr.curent Nume %25s An Grupa Note"," ");//%25s pt spatiu dupa


nume

n = 0;

freadb(s, f);//citire articol din fis binar-shortcut

while (!feof(f))

fprintf(g, "\n%3d %-30s %2d %4d", ++n,s.nume,s.an,s.grupa );//"-:pt


afisare la stanga

for (i = 0; i < s.n; i++)

fprintf(g, "%2d", s.note[i]);

freadb(s, f);
}

fclose(f);

fclose(g);

_getch();

return 0;

#include<stdio.h>

#include<conio.h>

//pb creare fis binar cu date despre stud

typedef struct { //definire structura

int nr;//nr matricol, da unicitate pt cautare;

char nume[30];

int an;

int grupa;

int n;

int note[15];

}Student;

int main()

FILE* f;

Student s;

int i;
char s1[20];

printf("Dati numele fis binar:");

gets_s(s1, 20);//sir de caract pe care l-am pus in s1

f = fopen(s1, "wb");

if (!f)printf("eroare");

else {

printf("\nDati nr matricol");

scanf("%d", &s.nr);//!!

while (!feof(stdin))//CTRL+Z

printf("\nNume stud:");

fflush(stdin);//goleste mem de tampon

scanf("%s", &s.nume);

printf("\nAn:");

scanf("%d", &s.an);

printf("\nGrupa:");

scanf("%d" , &s.grupa);

printf("\nNr discipline cu note:");

scanf("%d", &s.n);

for (i = 0; i < s.n; i++)

printf("Nota[%d]=", i + 1);

scanf("%d", &s.note[i]);

fwrite(&s, sizeof(Student), 1, f);//Scriere articol in fis binar

printf("Nr matricol NOU:");

scanf("%d", &s.nr);
}

fclose(f);

_getch();

return 0;

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