Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <string.h>
- #ifndef DEBUG
- #define DEBUG(...) printf(__VA_ARGS__)
- #endif
- #define SIZE 100
- typedef struct ispit{
- char ime[SIZE];
- char prezime[SIZE];
- int bodovi;
- int odgovori[SIZE];
- } student;
- void sort(student s[SIZE], int n) {
- student tmp;
- for (int i = 0; i < n; ++i)
- {
- for (int j = 1; j < n; ++j)
- {
- if (s[j - 1].bodovi < s[j].bodovi) {
- tmp = s[j - 1];
- s[j - 1] = s[j];
- s[j] = tmp;
- }
- if(s[j- 1].bodovi == s[j].bodovi) {
- if(!strcmp(s[j-1].prezime, s[j].prezime)) {
- if(strcmp(s[j-1].ime, s[j].ime) < 0) {
- tmp = s[j - 1];
- s[j - 1] = s[j];
- s[j] = tmp;
- }
- }
- else if(strcmp(s[j-1].prezime, s[j].prezime) < 0) {
- tmp = s[j - 1];
- s[j - 1] = s[j];
- s[j] = tmp;
- }
- }
- }
- }
- }
- int main() {
- student s[SIZE];
- int z, n, b[SIZE];
- scanf("%d\n", &z);
- for (int i = 0; i < z; ++i)
- {
- scanf("%d", &b[i]);
- }
- scanf("%d", &n);
- for (int i = 0; i < n; ++i)
- {
- s[i].bodovi = 0;
- scanf("%s %s", s[i].ime, s[i].prezime);
- for (int j = 0; j < z; ++j)
- {
- scanf("%d", &s[i].odgovori[j]);
- s[i].bodovi = s[i].bodovi + s[i].odgovori[j] * b[j];
- }
- //printf("%d\n", s[i].bodovi);
- }
- /*for (int i = 0; i < n; ++i)
- {
- printf("%s %s\n", s[i].ime, s[i].prezime);
- }*/
- sort(s, n);
- for (int i = 0; i < n; ++i)
- {
- printf("%s %s %d\n", s[i].ime, s[i].prezime, s[i].bodovi);
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement