Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- struct towar
- {
- char nazwa[30];
- float ilosc;
- float cena;
- };
- void czytaj (void);
- int main (void)
- {
- czytaj ();
- }
- void czytaj (void)
- {
- FILE *plik;
- int i = 0, n;
- struct towar *sztuka;
- struct towar *test;
- if ( (plik = fopen("magazyn.txt", "ab+")) == NULL)
- printf ("cos sie spitolilo przy otwieraniu pliku, sorrry\n");
- rewind (plik);
- puts ("podaj ilosc pozycji: ");
- scanf ("%d", &n);
- sztuka = (struct towar *) malloc (n * sizeof (struct towar));
- test = (struct towar *) malloc (n * sizeof (struct towar));
- getchar();
- /* wczytywanie do struktury */
- puts ("podaj ppierwsza nazwe towaru: ");
- while (i < n && gets(sztuka[i].nazwa) != NULL && sztuka[i].nazwa[0] != '\0')
- {
- printf ("podaj ilosc towaru nr: %d \n", i + 1);
- scanf ("%f", &sztuka[i].ilosc);
- printf ("podaj cene towaru nr: %d \n", i+1);
- scanf ("%f", &sztuka[i].cena);
- while (getchar() != '\n') continue;
- printf ("\t\t\ttessssssssst 1 : %s: %.2lf szt, %.2lf zl\n", sztuka[i].nazwa, sztuka[i].ilosc, sztuka[i].cena);
- i++;
- if (i < n)
- printf ("podaj nazwe nast towaru: \n");
- };
- /* zapis struktury do pliku */
- /*printf ("ilosc zapisanych struktur: %d \n", */fwrite (sztuka, sizeof (struct towar), n, plik); fseek(plik, -sizeof(struct towar)*n, SEEK_END);
- /*printf ("ilosc odczytanych struktur: %d \n",*/fread (test, sizeof (struct towar), n, plik);
- printf ("\t\t\ttessssssssst 2 : %s: %.2lf szt, %.2lf zl\n", test[0].nazwa, test[0].ilosc, test[0].cena);
- fclose (plik);
- system("PAUSE");
- }
Add Comment
Please, Sign In to add comment