Advertisement
Guest User

Zadatak2

a guest
May 3rd, 2016
53
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.97 KB | None | 0 0
  1. /*Napiši program koji učitava niz od n
  2. elemenata niza strukture ličnost, koja
  3. sadrži sledeća polja: ime, adresa, dan
  4. rođenja, mesec rođenja i godina
  5. rođenja. Prikazati osobe koje su u
  6. horoskopu bik.*/
  7.  
  8.  
  9. #include <stdio.h>
  10. #include <stdlib.h>
  11. #include <string.h>
  12. #define MAXIME 30
  13. #define MAXADRESA 50
  14. #define MAXDATUM 12
  15. #define MAX_SIZE 30
  16.  
  17. typedef struct licnost_st   {
  18.     char ime[MAXIME];
  19.     char adresa[MAXADRESA];
  20.     unsigned dan;
  21.     unsigned mesec;
  22.     unsigned godina;
  23. }LICNOST;
  24.  
  25. void ucitajLicnosti(LICNOST *, int *);
  26. void ispisiLicnosti(LICNOST *, int);
  27. void bikovi(LICNOST *, int);
  28.  
  29.  
  30. int main ()
  31. {
  32. int n;
  33. LICNOST niz[MAX_SIZE];
  34.  
  35. ucitajLicnosti(niz,&n);
  36. ispisiLicnosti(niz,n);
  37. bikovi(niz,n);
  38.  
  39.  
  40. return 0;
  41. }
  42.  
  43.  
  44. void ucitajLicnosti(LICNOST niz[MAX_SIZE], int *pn)
  45. {
  46.     do  {
  47.     printf("Koliko elemenata niza zelite? (Maksimalno %d)\n",MAX_SIZE);
  48.     scanf("%d",pn);
  49.     } while (*pn<=0 || *pn>MAX_SIZE);
  50.  
  51.     int i;
  52.  
  53.     for(i=0;i<*pn;i++)  {
  54.        
  55.         printf("Unesite ime %d osobe: ", i+1);
  56.         __fpurge(stdin);
  57.         gets(niz[i].ime);
  58.  
  59.         printf("Unesite adresu %d osobe: ", i+1);
  60.         __fpurge(stdin);        
  61.         gets(niz[i].adresa);
  62.  
  63.         printf("Unesite datum rodjenja %u. osobe (DD.MM.GGGG.):\n",i+1);
  64.  
  65.         __fpurge(stdin);
  66.         gets(&niz[i].dan);
  67.  
  68.         __fpurge(stdin);
  69.         gets(&niz[i].mesec);
  70.  
  71.         __fpurge(stdin);
  72.         gets(&niz[i].godina);
  73.  
  74.     }
  75. }
  76.  
  77.  
  78. void ispisiLicnosti(LICNOST niz[MAX_SIZE], int n)
  79. {
  80.     int i;
  81.     __fpurge(stdin);
  82.     for(i=0;i<n;i++)    {
  83.         printf("Ime i prezime:%s,\nAdresa:%s,\nDatum rodjenja %u .%u .%u .\n",niz[i].ime ,niz[i].adresa ,niz[i].dan-48 ,niz[i].mesec-48 ,niz[i].godina);
  84.     }
  85. }
  86.  
  87.  
  88. void bikovi(LICNOST niz[MAX_SIZE], int n)
  89. {
  90.     int i;
  91.    
  92.     printf("Bikovi u horoskopu su:\n");
  93.    
  94.     __fpurge(stdin);
  95.     for(i=0;i<n;i++)    {
  96.         if((niz[i].dan-48>19 && niz[i].mesec-48==4) || (niz[i].dan-48<22 && niz[i].mesec-48==5))    {
  97.             printf("%s\n",niz[i].ime);
  98.         } else {
  99.             printf("Niko od navedenih licnosti nije bik u horoskopu.\n")
  100.         }
  101.     }
  102. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement