Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- #include <string.h>
- typedef struct zoznam{
- char meno[30];
- char priezvisko[30];
- char pracovnik[10];
- char mzda[10];
- char datum[10];
- char mriezka[5];
- struct zoznam *p_dalsi;
- }ZOZNAM;
- ZOZNAM *alok()
- {
- ZOZNAM *p_pom;
- p_pom = (ZOZNAM*)malloc(sizeof(ZOZNAM));
- if(p_pom == NULL){
- printf("Malo pamete");
- exit(1);
- }
- return(p_pom);
- }
- void **nacitaj()
- {
- FILE *fr = NULL;
- int i,c,pocitadlo=0;
- ZOZNAM *p_prvy,*p_aktualny,*p_pred;
- int pracovnik=0;
- if((fr = fopen("zamestnanci.txt","r")) == NULL)
- {
- printf("Zaznamy neboli nacitane");
- return 0;
- }
- while((c=getc(fr))!= EOF)
- {
- ungetc(c,fr);
- if (c=getc(fr)=='#')
- pocitadlo++;
- }
- //printf("%d",pocitadlo);
- rewind(fr);
- for (i=1;i<=pocitadlo;i++){
- p_prvy = alok();
- fgets(p_prvy->meno,15,fr) ;
- fgets(p_prvy->priezvisko,32,fr) ;
- fgets(p_prvy->pracovnik,10,fr) ;
- fgets(p_prvy->mzda,10,fr) ;
- fgets(p_prvy->datum,10,fr) ;
- fgets(p_prvy->mriezka,10,fr) ;
- p_prvy->p_dalsi = NULL;
- p_aktualny=p_prvy;
- //printf("%d\n",i);
- //printf("meno: %s\n",p_aktualny->meno);
- //printf("priezvisko: %s\n",p_aktualny->priezvisko);
- //printf("pracovnik: %s\n",p_aktualny->pracovnik);
- //printf("mzda: %s\n",p_aktualny->mzda);
- //printf("datum: %s\n",p_aktualny->datum);
- //printf("mriezka: %s\n",p_aktualny->mriezka);
- p_aktualny->p_dalsi=NULL;
- }
- /*for(p_aktualny=p_prvy;p_aktualny != NULL; p_aktualny=p_aktualny->p_dalsi){
- printf("%s\n",p_aktualny->meno);
- }*/
- }
- void vypis()
- {
- ZOZNAM *p_prvy=0,*p_aktualny,*p_pred;
- nacitaj();
- for(p_aktualny=p_prvy;p_aktualny != NULL; p_aktualny=p_aktualny->p_dalsi){
- printf("%s\n",p_aktualny->meno);
- }
- }
- int main()
- {
- int c;
- FILE *fr = NULL;
- while ((c=getchar()) != 'K'){
- switch(c){
- case 'N' :
- nacitaj();
- break;
- case 'V' :
- vypis(fr);
- break;
- }
- }
- return 0;
- }
Add Comment
Please, Sign In to add comment