Advertisement
Guest User

cas 11

a guest
May 24th, 2019
132
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 3.42 KB | None | 0 0
  1. #define _CRT_SECURE_NO_WARNINGS
  2. #include <stdio.h>
  3.  
  4. void upisiProizvodeUDat1();
  5. void upisiProizvodeUDat2();
  6. void dodajProizvode();
  7. void procitajProizvodeIzDat1();
  8. void procitajProizvodeIzDat2();
  9. void procitajProizvodeIzDat3();
  10.  
  11.  
  12. int main(void) {
  13.     procitajProizvodeIzDat3();
  14.  
  15.     system("pause");
  16.     return 0;
  17. }
  18.  
  19. void upisiProizvodeUDat1()
  20. {
  21.     FILE * datoteka = fopen("proizvodi.txt", "w"); 
  22.     if (datoteka == NULL) {
  23.         printf("Doslo je do greske prilikom otvaranja datoteke!\n");
  24.         return;
  25.     }
  26.     char name[50];
  27.     double price;
  28.     char izbor;
  29.     do {
  30.         printf("Unesite ime proizvoda: ");
  31.         gets(name);
  32.         fprintf(datoteka, "%s\n", name);
  33.  
  34.         printf("Unesite cenu proizvoda: ");
  35.         scanf("%lf", &price);
  36.         getchar();  //samo gets kupi sa enterom ostane enter od scanf
  37.         fprintf(datoteka, "%.2lf\n", price);
  38.  
  39.         printf("Ako zelite da ne unosite vise proizvode unesite 'n': ");
  40.         izbor = getchar();  //pokupi karakter i ovo dole pokupi enter jer su to 2 karaktera
  41.         getchar();
  42.     } while (izbor != 'n');
  43.  
  44.     fclose(datoteka);
  45. }
  46.  
  47. void upisiProizvodeUDat2()
  48. {
  49.     FILE * datoteka = fopen("C:\\Users\\student1\\source\\repos\\Project18\\Project18\\proizvodi.txt", "w");
  50.     if (datoteka == NULL) {
  51.         printf("Greska prilikom otvaranja datoteke!");
  52.         return;
  53.     }
  54.     char naziv[50];
  55.     char cena[50];
  56.     char izbor;
  57.     do {
  58.         printf("Unesi naziv proizvoda: ");
  59.         gets(naziv);
  60.         fputs(naziv, datoteka);
  61.         fputs("\n", datoteka);
  62.  
  63.         printf("Unesi cenu proizvoda: ");
  64.         gets(cena);
  65.         fputs(cena, datoteka);
  66.         fputs("\n", datoteka);
  67.  
  68.         printf("Unesite d/n: ");
  69.         izbor = getchar();
  70.         getchar();
  71.  
  72.     } while (izbor != 'n');
  73.     fclose(datoteka);
  74.  
  75. }
  76.  
  77. void dodajProizvode()
  78. {
  79.     FILE * datoteka = fopen("proizvodi.txt", "a");
  80.     if (datoteka == NULL) {
  81.         printf("Greska!");
  82.         return;
  83.     }
  84.     char naziv[50];
  85.     double cena;
  86.     char izbor;
  87.     do {
  88.         printf("Unesi naziv proizvoda: ");
  89.         gets(naziv);
  90.         fputs(naziv, datoteka);
  91.         fputs("\n", datoteka);
  92.  
  93.         printf("Unesite cenu proizvoda: ");
  94.         scanf("%lf", &cena);
  95.         getchar();  //samo gets kupi sa enterom ostane enter od scanf
  96.         fprintf(datoteka, "%.2lf\n", cena);
  97.  
  98.         printf("Unesite d/n: ");
  99.         izbor = getchar();
  100.         getchar();
  101.  
  102.     } while (izbor != 'n');
  103.     fclose(datoteka);
  104. }
  105.  
  106. void procitajProizvodeIzDat1()
  107. {
  108.     FILE * datoteka = fopen("proizvodi.txt", "r");
  109.     if (datoteka == NULL) {
  110.         printf("Doslo je do greske u ucitavanju datoteke u r modu");
  111.         return;
  112.     }
  113.     char znak;
  114.     /*while (!feof(datoteka)) {
  115.         znak = fgetc(datoteka);
  116.         printf("%c", znak);
  117.     }*/
  118.     /*
  119.     while (1) {
  120.         znak = fgetc(datoteka);
  121.         if (znak == EOF) {
  122.             break;
  123.         }
  124.         printf("%c", znak);
  125.     }*/
  126.     while ((znak = fgetc(datoteka)) != EOF) {
  127.         printf("%c", znak);
  128.     }
  129.  
  130.     printf("\n");
  131.     fclose(datoteka);
  132. }
  133.  
  134. void procitajProizvodeIzDat2()
  135. {
  136.     FILE * datoteka = fopen("proizvodi.txt", "r");
  137.     if (datoteka == NULL) {
  138.         printf("Greska!");
  139.         return;
  140.     }
  141.     char red[100];
  142.     //while (!feof(datoteka)) {
  143.     //  fgets(red, 100, datoteka);
  144.     //  printf("%s", red);
  145.     //}
  146.     while (fgets(red, 100, datoteka) != NULL) {
  147.         printf("%s", red);
  148.     }
  149.     fclose(datoteka);
  150. }
  151.  
  152. void procitajProizvodeIzDat3()
  153. {
  154.     FILE * datoteka = fopen("proizvodi.txt", "r");
  155.     if (datoteka == NULL) {
  156.         printf("Greska!");
  157.         return;
  158.     }
  159.     char naziv[100];
  160.     double cena;
  161.     while (fgets(naziv, 100, datoteka) != NULL) {
  162.         fscanf(datoteka, "%lf", &cena);
  163.         //printf("%s %.2lf\n", naziv, cena);
  164.         fprintf(stdout, "%s%.2lf", naziv, cena);
  165.     }
  166.  
  167.  
  168.     fclose(datoteka);
  169. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement