Sunteți pe pagina 1din 2

/*

Să se scrie programul care creează un fișier text și memorează informații despre produsele aflate
în depozitul unui magazin. Informațiile care se rețin despre produse sunt:
codul produsului (int)
numele produsului (char [20])
cantitatea (int)
prețul (float).
Sfârșitul introducerii datelor de la tastatură este marcat standard (ctrl+z).

*/

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>

typedef struct
{
int cod;
char numeProdus[20];
int cantitate;
float pret;
}PRODUS;

void main()
{
FILE* f;
PRODUS p;
char numeFisier[20];
printf("Introduceti numele fisierului: ");
scanf("%s", numeFisier);

//deschidem fisierul
f = fopen(numeFisier, "w");

if(!f)
{
printf("Eroare");
}
else
{
fprintf(f,"cod Produs Nume Produs Cantitate Pret \n");
printf("cod=");
scanf("%d", &p.cod);
while (!feof(stdin)) //atata timp cat nu e sfarsit de tastatura
{
getchar();
printf("nume produs =");
gets(p.numeProdus); //preia mai multe cuvinte
printf("Cantitate = ");
scanf("%d", &p.cantitate);
printf("Pret = ");
scanf("%f", &p.pret);
fprintf(f, "%-10d %-20s %9d %7.2f \n", p.cod, p.numeProdus, p.cantitate, p.pret); //%-20f
pentru aliniere la stanga
printf("cod=");
scanf("%d", &p.cod);
}
fclose(f);
}
}

//scrierea intr-un fisier binar


#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>

void main()
{
FILE* f;
float x;
char numeFisier[20];
printf("Introduceti numele fisierului: ");
scanf("%s", numeFisier);

//deschidem fisierul
f = fopen(numeFisier, "wb");

if (!f)
{
printf("Eroare");
}
else
{
printf("x=");
scanf("%f", &x);
while (!feof(stdin))
{
fwrite(&x, sizeof(x), 1, f);
printf("x=");
scanf("%f", &x);
}
}
}

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