#include #include #include #define MAX_INDEKS 11 typedef struct { char indeks[MAX_INDEKS]; int ocena; int obradjen; } STUDENT; void greska(); int main() { STUDENT *niz; int n; scanf("%d", &n); if(n <= 0) greska(); niz = (STUDENT*)malloc(n * sizeof(STUDENT)); if(niz == NULL) greska(); int i; for(i = 0; i < n; i++) { scanf("%s%d", niz[i].indeks, &niz[i].ocena); if(niz[i].ocena < 6 || niz[i].ocena > 10) greska(); niz[i].obradjen = 0; } int j; float prosek; int broj; for(i = 0; i < n; i++) { if(niz[i].obradjen) continue; prosek = niz[i].ocena; broj = 1; for(j = i+1; j < n; j++) { if(niz[j].obradjen == 0) { if(strcmp(niz[j].indeks, niz[i].indeks) == 0) { broj++; prosek += niz[j].ocena; niz[j].obradjen = 1; } } } printf("%s %.2f\n", niz[i].indeks, prosek/broj); } free(niz); return 0; } void greska() { fprintf(stderr, "-1"); exit(EXIT_FAILURE); }