Advertisement
Guest User

Untitled

a guest
Apr 19th, 2018
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.64 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <string.h>
  3. #ifndef DEBUG
  4. #define DEBUG(...) printf(__VA_ARGS__)
  5. #endif
  6. #define SIZE 100
  7.  
  8. typedef struct ispit{
  9. char ime[SIZE];
  10. char prezime[SIZE];
  11. int bodovi;
  12. int odgovori[SIZE];
  13. } student;
  14.  
  15. void sort(student s[SIZE], int n) {
  16. student tmp;
  17. for (int i = 0; i < n; ++i)
  18. {
  19. for (int j = 1; j < n; ++j)
  20. {
  21. if (s[j - 1].bodovi < s[j].bodovi) {
  22. tmp = s[j - 1];
  23. s[j - 1] = s[j];
  24. s[j] = tmp;
  25. }
  26. if(s[j- 1].bodovi == s[j].bodovi) {
  27. if(!strcmp(s[j-1].prezime, s[j].prezime)) {
  28. if(strcmp(s[j-1].ime, s[j].ime) < 0) {
  29. tmp = s[j - 1];
  30. s[j - 1] = s[j];
  31. s[j] = tmp;
  32. }
  33. }
  34. else if(strcmp(s[j-1].prezime, s[j].prezime) < 0) {
  35. tmp = s[j - 1];
  36. s[j - 1] = s[j];
  37. s[j] = tmp;
  38. }
  39. }
  40. }
  41. }
  42. }
  43.  
  44. int main() {
  45. student s[SIZE];
  46. int z, n, b[SIZE];
  47.  
  48. scanf("%d\n", &z);
  49.  
  50. for (int i = 0; i < z; ++i)
  51. {
  52. scanf("%d", &b[i]);
  53. }
  54.  
  55. scanf("%d", &n);
  56.  
  57. for (int i = 0; i < n; ++i)
  58. {
  59. s[i].bodovi = 0;
  60. scanf("%s %s", s[i].ime, s[i].prezime);
  61. for (int j = 0; j < z; ++j)
  62. {
  63. scanf("%d", &s[i].odgovori[j]);
  64. s[i].bodovi = s[i].bodovi + s[i].odgovori[j] * b[j];
  65. }
  66. //printf("%d\n", s[i].bodovi);
  67. }
  68.  
  69. /*for (int i = 0; i < n; ++i)
  70. {
  71. printf("%s %s\n", s[i].ime, s[i].prezime);
  72. }*/
  73.  
  74. sort(s, n);
  75.  
  76. for (int i = 0; i < n; ++i)
  77. {
  78. printf("%s %s %d\n", s[i].ime, s[i].prezime, s[i].bodovi);
  79. }
  80. return 0;
  81. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement