Advertisement
lazar955

Untitled

Jun 4th, 2016
118
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.98 KB | None | 0 0
  1. #define _CRT_SECURE_NO_WARNINGS
  2.  
  3. #include<stdio.h>
  4. #include<string.h>
  5. #include<stdlib.h>
  6.  
  7. typedef struct prijava{
  8. char index[9];
  9. char sifraPredmeta[7];
  10. int ocena;
  11. }PRIJAVA;
  12.  
  13.  
  14. typedef struct element *POKAZIVAC;
  15.  
  16.  
  17. typedef struct element{
  18. PRIJAVA podatak;
  19. POKAZIVAC sledeci;
  20. }ELEMENT;
  21.  
  22. typedef struct glavarep *LISTA;
  23. struct glavarep{
  24. POKAZIVAC glava;
  25. POKAZIVAC rep;
  26. };
  27.  
  28. void ubacivanjeNaKraj(LISTA lista, PRIJAVA noviPodatak){
  29. POKAZIVAC noviElement = malloc(sizeof(ELEMENT));
  30.  
  31. noviElement->podatak = noviPodatak;
  32. noviElement->sledeci = NULL;
  33.  
  34. if (lista->glava == NULL)
  35. {
  36. lista->glava = noviElement;
  37. lista->rep = noviElement;
  38. }
  39. else
  40. {
  41. lista->rep->sledeci = noviElement;
  42. lista->rep = noviElement;
  43. }
  44.  
  45. }
  46.  
  47. int postoji(LISTA lista, PRIJAVA prijava){
  48. POKAZIVAC pom = lista->glava;
  49.  
  50. if (lista->glava == NULL){
  51. return -1;
  52. }
  53.  
  54.  
  55. while (pom!=NULL)
  56. {
  57. if (strcmp(pom->podatak.index, prijava.index) == 0
  58. && strcmp(pom->podatak.sifraPredmeta, prijava.sifraPredmeta) == 0
  59. && pom->podatak.ocena == prijava.ocena)
  60. {
  61.  
  62. return 1;
  63. }
  64.  
  65.  
  66. pom = pom->sledeci;
  67. }
  68.  
  69.  
  70. return 0;
  71.  
  72. }
  73.  
  74.  
  75. void unesi(LISTA lista, PRIJAVA prijava){
  76. POKAZIVAC pom = lista->glava;
  77.  
  78. if (lista->glava == NULL){
  79. return -1;
  80. }
  81. int max = prijava.ocena;
  82.  
  83. while (pom!=NULL)
  84. {
  85. if (strcmp(pom->podatak.index, prijava.index) == 0
  86. && strcmp(pom->podatak.sifraPredmeta, prijava.sifraPredmeta) == 0){
  87. if (max < pom->podatak.ocena){
  88. max = pom->podatak.ocena;
  89. }
  90. }
  91.  
  92. pom = pom->sledeci;
  93. }
  94.  
  95. if (max == prijava.ocena){
  96. ubacivanjeNaKraj(lista, prijava);
  97. }
  98.  
  99. }
  100.  
  101.  
  102. void prikazi(LISTA lista){
  103. POKAZIVAC pom = lista->glava;
  104.  
  105. if (lista->glava == NULL){
  106. return -1;
  107. }
  108.  
  109. while (pom!=NULL)
  110. {
  111. printf("Index: %s\n", pom->podatak.index);
  112. printf("Sifra Predmeta: %s\n", pom->podatak.sifraPredmeta);
  113. printf("Ocena: %d\n", pom->podatak.ocena);
  114.  
  115. pom = pom->sledeci;
  116. }
  117. }
  118.  
  119. int main(void){
  120.  
  121.  
  122. return 0;
  123. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement