Advertisement
lancernik

aisdzapasowe

May 20th, 2019
126
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.32 KB | None | 0 0
  1. #define SIZE 3
  2. #include "stdio.h"
  3. #include "stdlib.h"
  4. #include "string.h"
  5.  
  6.  
  7. /* Definiuje wartosci poczatkowe */
  8.  
  9. char nazwisko[15], imie[15];
  10. int DataUrodzin;
  11. int PozycjaWBazie=1;
  12. char *ImieDoBazy;
  13. char *NazwiskoDoBazy;
  14. int Wybor;
  15.  
  16.  
  17. /* Definiuje strukutre */
  18. typedef struct Osoby {
  19. char nazwisko[15];
  20. char imie[15];
  21. int rok;
  22. }Osoba;
  23.  
  24.  
  25. /* Definiuje funkcje */
  26.  
  27. Osoba *StworzTablice(Osoba *myarray);
  28. char * wczytaj(char *z, int ile);
  29. void init(Osoba *myarray, char *NazwiskoDoBazy, char *ImieDoBazy, int DataUrodzin, int PozycjaWBazie);
  30. void PokazRekordy(Osoba *myarray, int PozycjaWBazie);
  31. void LiczbaRekordow(int PozycjaWBazie);
  32.  
  33.  
  34.  
  35.  
  36.  
  37.  
  38.  
  39.  
  40.  
  41. #include "functions.c"
  42.  
  43.  
  44. int main()
  45. {
  46. Osoba *myarray;
  47. myarray=StworzTablice(myarray);
  48.  
  49.  
  50. for(;;)
  51. {
  52. fflush(stdin);
  53. printf("\n === Baza uzytkownikow biblioteki AGH === \n");
  54. printf("\n 1:Dodanie uzytkownika do bazy\n");
  55. printf("\n 2:Przegladanie bazy uzytkownikow\n");
  56. printf("\n 3:Liczba rekordow w bazie\n");
  57. printf("\n 4:Koniec\n");
  58. printf("\n\nWybierz jedna z powyzszych opcji:\n");
  59. scanf("%d", &Wybor);
  60. getchar();
  61.  
  62. switch(Wybor){
  63. case 1:{
  64. printf("Podaj nazwisko: ");
  65. printf("\n");
  66. NazwiskoDoBazy=wczytaj(nazwisko,15);
  67. printf("\n");
  68. printf("Podaj imie: ");
  69. ImieDoBazy=wczytaj(imie,15);
  70. printf("Podaj rok urodzenia: ");
  71. scanf("%d", &DataUrodzin);
  72. printf("\n");
  73. init(myarray,NazwiskoDoBazy,ImieDoBazy,DataUrodzin, PozycjaWBazie);
  74. PozycjaWBazie++;
  75. break;}
  76. case 2:{
  77. clrscr();
  78. PokazRekordy(myarray, PozycjaWBazie);
  79. break;}
  80. case 3:{
  81. clrscr();
  82. LiczbaRekordow(PozycjaWBazie);
  83. break;}
  84. case 4:{
  85. exit(0);
  86. break;}
  87. default: printf("\n Wybrana opcja nie jest dostepna \n");}
  88. }
  89.  
  90.  
  91. return 0;
  92. }
  93.  
  94.  
  95.  
  96.  
  97.  
  98.  
  99.  
  100. #include "header.h"
  101.  
  102. void clrscr()
  103. {
  104. system("@cls||clear");
  105. }
  106.  
  107. Osoba *StworzTablice(Osoba *myarray){
  108. myarray = (Osoba *) malloc(SIZE * sizeof (Osoba));
  109. if (myarray == NULL){
  110. printf("Tablica jest pusta!");
  111. exit(0);
  112. }
  113. return myarray;
  114. }
  115.  
  116. char * wczytaj(char *z, int ile)
  117. {
  118. char * wynik;
  119. int i = 0;
  120. wynik = fgets(z, ile, stdin);
  121. if(wynik) /* wynik rozny od NULL */
  122. {
  123. while(z[i] != '\n' && z[i] != '\0')
  124. i++;
  125. if(z[i] == '\n')
  126. z[i] = '\0'; /* znak nowego wiersza -> znak pusty */
  127. else
  128. while(getchar() != '\n')
  129. continue;
  130. }
  131. return wynik;
  132. }
  133.  
  134.  
  135.  
  136. void init(Osoba *myarray, char *NazwiskoDoBazy, char *ImieDoBazy, int DataUrodzin, int PozycjaWBazie){
  137. strcpy(myarray[PozycjaWBazie].nazwisko,NazwiskoDoBazy);
  138. strcpy(myarray[PozycjaWBazie].imie,ImieDoBazy);
  139. myarray[PozycjaWBazie].rok=DataUrodzin;
  140.  
  141. }
  142.  
  143. void PokazRekordy(Osoba *myarray, int PozycjaWBazie){
  144. int i=0;
  145. for (i=1; i<PozycjaWBazie;i++){
  146. printf("\n\nOto dane osoby %d\n", i);
  147. printf("%s ", myarray[i].nazwisko);
  148. printf("%s ", myarray[i].imie);
  149. printf("%d ", myarray[i].rok);
  150. printf("\n\n");
  151. }
  152. }
  153.  
  154.  
  155. void LiczbaRekordow(int PozycjaWBazie){
  156. printf("\n W bazie danych biblioteki jest %d uzytkownikow \n\n", PozycjaWBazie-1);
  157. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement