#include #include #define BROJ_STUDENATA 3 /* definisemo strukturu koja sadrzi osnovne informacije o studentu; koristili smo typedef operator za preimenovanje para reci struct student u Student */ typedef struct student{ char ime[10]; char prezime[10]; char smer; double prosek; }Student; void ucitaj_studenta(Student* pS){ printf("Unesite informacije o studentu:\n"); printf("Ime: "); scanf("%s", pS->ime); printf("Prezime: "); scanf("%s", pS->prezime); printf("Smer: \n\t r-racunarstvo \ \n\t m-teorijska matematika\ \n\t v-verovatnoca i statistika\ \n\t l- profesor\ \n\t a-astronomija\n"); getchar(); /* neophodno da bismo pokupili znak za novi red od prethodnog unosa*/ printf("Unesite odgovarajuce slovo: "); scanf("%c", &pS->smer); printf("Prosek: "); scanf("%lf", &pS->prosek); } void pisi_studenta(Student* pS){ printf("Ime: %s\n", pS->ime); printf("Prezime: %s\n", pS->prezime); printf("Smer: "); switch(pS->smer){ case 'r': printf("racunarstvo\n"); break; case 'm': printf("teorijska matematika\n"); break; case 'v': printf("verovatnoca i statistika\n"); break; case 'l': printf("profesor matematika i rac.\n"); break; case 'a': printf("astronomija\n"); } printf("Prosek: %lf\n", pS->prosek); printf("\n\n"); } void sortiraj_po_prezimenu(Student s[], int n){ int i,j; Student tmp; for(i=0;i0){ tmp=s[i]; s[i]=s[j]; s[j]=tmp; } } int main(void){ /* deklarisemo niz duzine BROJ_STUDENATA=5 koji sadrzi inforamcije o studentima; OBRATITI PAZNJU da su s[0], s[1], s[2], s[3] i s[4] strukture tipa Student i da se odgovarajucim poljima moze pristupiti sa npr. s[2].ime s[3].prosek ... */ Student s[BROJ_STUDENATA]; double max; /* brojna vrednost maksimalnog proseka */ int redni_broj; /* redni broj studenta sa maksimalnim prosekom */ int i; /* ucitavamo inforamcije o studentima */ for(i=0;imax){ max=s[i].prosek; redni_broj=i; } printf("Student sa najvecim prosekom: \n"); printf("----------------------------------------\n"); pisi_studenta(&s[redni_broj]); /* pozivamo funkciju koja sortira niz prema prezimenu */ sortiraj_po_prezimenu(s,BROJ_STUDENATA); /* i ispisujemo informacije o svim studentima */ printf("Spisak studenata uredjen po prezimenima:\n"); printf("-----------------------------------------------\n"); for(i=0;i