Advertisement
Guest User

Untitled

a guest
Apr 26th, 2019
88
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 2.90 KB | None | 0 0
  1. // projekt2.c -- Illia Lynnyk, 15.4.2019 22:47
  2. #include <stdio.h>
  3. #include <string.h>
  4. #include <stdlib.h>
  5.  
  6. typedef struct zamestnanci {
  7.     char meno[30];
  8.     char priezvisko[30];
  9.     char rCislo[10];
  10.     float hMzda;
  11.  
  12.     struct zamestnanci *dalsi;
  13. } ZAMESTNANCI;
  14.  
  15. int nacitaj(ZAMESTNANCI **p_prv)
  16. {
  17.     ZAMESTNANCI *p_akt;
  18.     int zaznam = 0;
  19.     char c;
  20.     FILE *fp;
  21.  
  22.     if ((fp = fopen("zamestnanci.txt", "r")) == NULL) {         // kontrola otvarania suboru
  23.         printf("Zaznamy neboli nacitane\n");
  24.         return 0;
  25.     }
  26.  
  27.     char meno_1[30];
  28.     char priezvisko_1[30];
  29.     int rCislo_1[10];
  30.     float hMzda_1;
  31.  
  32.     *p_prv = (ZAMESTNANCI*) malloc(sizeof(ZAMESTNANCI));
  33.  
  34.     // fscanf(fp,"%s %s %s %f", meno_1, priezvisko_1, rCislo_1, &hMzda_1);
  35.    
  36.     // strcpy(p_prv->meno, meno_1);
  37.     // strcpy(p_prv->priezvisko, priezvisko_1);
  38.     // strcpy(p_prv->rCislo, rCislo_1);
  39.     // p_prv->hMzda = hMzda_1;
  40.        
  41.     // printf("%s %s %s %.2f\n", p_prv->meno, p_prv->priezvisko, p_prv->rCislo, p_prv->hMzda);          // vypis zoznamu
  42.  
  43.     p_akt = *p_prv;
  44.     while (fscanf(fp, "%s %s %s %f", meno_1, priezvisko_1, rCislo_1, &hMzda_1) != EOF) {
  45.         p_akt->dalsi = (ZAMESTNANCI*) malloc(sizeof(ZAMESTNANCI));
  46.         p_akt = p_akt->dalsi;
  47.         strcpy(p_akt->meno, meno_1);
  48.         strcpy(p_akt->priezvisko, priezvisko_1);
  49.         strcpy(p_akt->rCislo, rCislo_1);
  50.         p_akt->hMzda = hMzda_1;
  51.         zaznam++;
  52.  
  53.         printf("%s %s %s %.2f\n", p_akt->meno, p_akt->priezvisko, p_akt->rCislo, p_akt->hMzda);
  54.     }
  55.     p_akt->dalsi = NULL;
  56.  
  57.     printf("Nacitalo sa %d zaznamov\n", zaznam);
  58.  
  59.     fclose(fp);
  60.     return zaznam;
  61. }
  62.  
  63. void vypis(ZAMESTNANCI *p_prv)
  64. {
  65.     ZAMESTNANCI *p_akt;
  66.     p_akt = p_prv;
  67.     while (p_akt != NULL) {
  68.         printf("vypis_meno = %s\n", p_akt->meno);           // vypis zoznamu
  69.         printf("vypis_priezvisko = %s\n", p_akt->priezvisko);
  70.         printf("vypis_rCislo = %s\n", p_akt->rCislo);
  71.         printf("vypis_hMzda = %.2f\n\n", p_akt->hMzda);
  72.         p_akt = p_akt->dalsi;
  73.     }
  74.    
  75. }
  76.  
  77. void main(void)
  78. {
  79.     int zaznam, pom, p, v;
  80.     float p_1;
  81.     char prikaz[10], str1[10], str2[10], str3[10], str4[10], str5[10], str6[10], str7[10];
  82.  
  83.     ZAMESTNANCI *p_prv = NULL;
  84.  
  85.     strcpy(str1, "nacitaj");
  86.     strcpy(str2, "vypis");
  87.     strcpy(str3, "pridaj");
  88.     strcpy(str4, "overRC");
  89.     strcpy(str5, "deduplikuj");
  90.     strcpy(str6, "aktualizuj");
  91.     strcpy(str7, "koniec");
  92.  
  93.     while (scanf("%s", prikaz) > 0) {
  94.         pom = strcmp(str1, prikaz);
  95.         if (pom == 0) {
  96.             zaznam = nacitaj(&p_prv);
  97.         }
  98.         pom = strcmp(str2, prikaz);
  99.         if (pom == 0) {
  100.           vypis(&p_prv);
  101.         }
  102.         // pom = strcmp(str3, prikaz);
  103.         // if (pom == 0) {
  104.         // scanf("%d", &p);
  105.         //   pridaj(p);
  106.         // }
  107.         // pom = strcmp(str4, prikaz);
  108.         // if (pom = 0) {
  109.         //   overRC();
  110.         // }
  111.         // pom = strcmp(str5, prikaz);
  112.         // if (pom == 0) {
  113.         //   deduplikuj();
  114.         // }
  115.         // pom = strcmp(str6, prikaz);
  116.         // if (pom == 0) {
  117.         // scanf("%d", &v);
  118.         // scanf("%f", %p_1);
  119.         //   aktualizuj(v, p_1);
  120.         // }
  121.         pom = strcmp(str7, prikaz);
  122.         if (pom == 0) {
  123.             // free...
  124.             return 0;
  125.         }
  126.     }
  127. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement