Advertisement
Stefan1999

Sifarnik

May 14th, 2017
67
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.65 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. /*
  4. spisak:
  5. Perica Peric 123456
  6. Milana Milavic 456789
  7. Hasana Hasic 405938
  8.  
  9. sifarnik:
  10.  
  11. 123456 45
  12. 456789 80
  13. 405938 80
  14.  
  15. */
  16. struct Osoba {
  17.     char ime[30];
  18.     char prezime[30];
  19.     char sifra[30];
  20.     int brojbodova;
  21. };
  22. struct Sifrabrojbodova {
  23.     char sifra[30];
  24.     int brojbodova;
  25. };
  26. int main() {
  27.     FILE *fp;
  28.     struct Osoba osobe[10], temp;
  29.     struct Sifrabrojbodova sifreOcene[10];
  30.     int n = 0, i, j;
  31.     fp = fopen("spisak.txt", "r");
  32.     while(!feof(fp)) {
  33.         fscanf(fp, "%s %s %s", osobe[n].ime, osobe[n].prezime,
  34. osobe[n].sifra);
  35.         n++;
  36.     }
  37.     fclose(fp);
  38.     fp = fopen("sifarnik.txt", "r");
  39.     n = 0;
  40.     while(!feof(fp)) {
  41.         fscanf(fp, "%s %d", sifreOcene[n].sifra, &sifreOcene[n].brojbodova);
  42.         n++;
  43.     }
  44.     fclose(fp);
  45.  
  46.     for(i=0; i<n; i++) {
  47.         for(j=0; j<n; j++) {
  48.             if(strcmp(osobe[i].sifra, sifreOcene[j].sifra) == 0) {
  49.                 osobe[i].brojbodova = sifreOcene[j].brojbodova;
  50.             }
  51.         }
  52.     }
  53.  
  54.     for(i=0; i<n; i++) {
  55.         for(j=0; j<n; j++) {
  56.             if(osobe[i].brojbodova > osobe[j].brojbodova) {
  57.                 temp = osobe[i];
  58.                 osobe[i] = osobe[j];
  59.                 osobe[j] = temp;
  60.             }
  61.         }
  62.     }
  63.     printf("Redni broj\tPrezime\t\tIme\tBroj bodova\n");
  64.     for(i=0; i<n; i++) {
  65.         if(i != n-1 && osobe[i].brojbodova == osobe[i+1].brojbodova) {
  66.             printf("%d", i+1);
  67.         } else {
  68.             printf("%d", i);
  69.         }
  70.         printf("\t\t%s\t\t%s\t%d\n", osobe[i].prezime, osobe[i].ime,
  71. osobe[i].brojbodova);
  72.     }
  73.     return 0;
  74. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement