Advertisement
filip710

PROG2 LV8 Z2

Jun 29th, 2016
259
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 2.97 KB | None | 0 0
  1. /* Iskoristiti prethodni zadataka, no dodati sljedeće operacije u izbornik:
  2. 1- Kreiranje datoteke članovi.txt,
  3. 2- Čitanje iz datoteke članovi.txt
  4. 3- Dodavanje novih članova u članovi.txt,
  5. 4- Posudba filma
  6. 5- Završetak programa
  7. Ukoliko se odabere opcija 4, trebaju se izvršiti sljedeće operacije:
  8. - pitati koliko se filmova želi posuditi (ne više od 4)
  9. - za svaki film unijeti: ime filma, datum posudbe (broj manji od 365 koji
  10. označava dan u godini) i šifra člana koji je posudio film.
  11. - Sve te podatke o posuđenom filmu spremiti u datoteku posudbe.txt
  12. Ako je korisnik već posuđivao filmove, ima pravo posuditi nove filmove dok god je
  13. broj posuđenih filmova manji od 4. Ukoliko ne postoji datoteka posudbe.txt,
  14. potrebno ju je kreirati, u suprotnom je otvaramo i dodajemo nove posuđene filmove. */
  15.  
  16.  
  17. //MAIN FUNKCIJA
  18. #include <stdio.h>
  19. #include <math.h>
  20. #include <stdlib.h>
  21.  
  22. #include "nekiheader.h"
  23. int main()
  24. {
  25.  int i;
  26.  int opt, mov;
  27.  int sifra;
  28.  struct posudba filmovi[4];
  29.  FILE *f1;
  30.  f1 = fopen("posudba.txt", "a");
  31.  fclose(f1);
  32.  f1 = fopen("posudba", "a");
  33.  fclose(f1);
  34.  
  35.  do{
  36.     printf("Odaberite radnju\n");
  37.     scanf("%d", &opt);
  38.     switch(opt){  
  39.               case 1 :
  40.               f1=fopen("clanovi.txt","w");
  41.               fclose(f1);
  42.               break;
  43.              
  44.               case 2 :
  45.               f1=fopen ("clanovi.txt","r");
  46.               fclose(f1);
  47.               break;
  48.              
  49.               case 3 :
  50.                 f1=fopen ("clanovi.txt","w");
  51.                 printf("Unesite podatke\n");
  52.                 scanf("%s", clanovi.prezime);
  53.                 getchar();
  54.                 scanf("%s", clanovi.ime);
  55.                 scanf("%d", &clanovi.sifra);
  56.                 getchar();
  57.                 scanf("%[^\n]s", clanovi.adresa);
  58.                 scanf("%d", &clanovi.br_tel);
  59.                 fwrite(&clanovi,sizeof(struct podaci),1,f1);
  60.                 fclose(f1);
  61.                 break;
  62.                
  63.                 case 4:
  64.                  f1=fopen ("posudba.txt","w");
  65.                  scanf("%d", &mov);
  66.                  scanf("%d", &sifra);
  67.                  for(i = 0; i<mov;i++){
  68.                  struct posudba film;
  69.                  fgets(&film.ime_filma, 20, stdin);
  70.                  scanf("%d", &film.datum);
  71.                  filmovi[i] = film;
  72.                  }
  73.                  for(i=0;i<mov;i++){
  74.                 fwrite(&filmovi[i], sizeof(struct posudba), 1, f1);
  75.                  }
  76.                  fclose(f1);
  77.                  break;
  78.                
  79.             default : printf("Ta operacija ne postoji!\n  "); break;
  80.             }
  81.  }while(opt<1||opt>5);
  82.  
  83.  return 0;
  84. }
  85.  
  86. //HEADER
  87.  
  88. #ifndef NEKIHEADER_H
  89. #define NEKIHEADER_H
  90.  
  91. #include<stdio.h>
  92. #include<stdlib.h>
  93.  
  94. struct podaci
  95. {
  96.     char prezime[20];
  97.     char ime[20];
  98.     int sifra;
  99.     char adresa[100];
  100.     int br_tel;
  101. }clanovi;
  102.    
  103. struct posudba{
  104.     char ime_filma[20];
  105.     int datum;
  106.     int sif;
  107. };
  108.  
  109. #endif
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement