Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- struct Student {
- char prezime[20];
- char ime[15];
- int broj_bodova1;
- int broj_bodova2;
- };
- int main() {
- struct Student studenti[300], tmp;
- FILE *ulaz, *izlaz;
- int i, j, vel, max;
- /* Otvaranje datoteka */
- if ((ulaz = fopen("ispiti.txt","r")) == NULL ) {
- printf("Greska pri otvaranju datoteke ispit.txt");
- exit(1);
- }
- if ((izlaz = fopen("usmeni.txt","w")) == NULL) {
- fclose(ulaz);
- printf("Greska pri otvaranju datoteke ispit_sortiran.txt");
- exit(1);
- }
- i=0;
- while (fscanf(ulaz,"%20s%15s%2d%2d\n", studenti[i].prezime, studenti[i].ime, &studenti[i].broj_bodova1, &studenti[i].broj_bodova2) == 4 && i < 300 )
- i++;
- vel=i;
- /* Sortiranje niza po broju bodova */
- for (i=0; i<vel; i++) {
- max=i;
- for (j=i+1; j<vel; j++) {
- if (studenti[j].broj_bodova1+studenti[j].broj_bodova2 > studenti[i].broj_bodova1+studenti[i].broj_bodova2)
- {
- max=j;
- tmp = studenti[i];
- studenti[i]=studenti[max];
- studenti[max]=tmp;
- }
- }
- }
- /* Upis niza u datoteku */
- for (i=0; i<vel; i++) {
- if(studenti[i].broj_bodova1 >= 10 && studenti[i].broj_bodova2 >= 10)
- fprintf(izlaz, "%-20s%-15s%2d\n", studenti[i].prezime, studenti[i].ime, studenti[i].broj_bodova1+studenti[i].broj_bodova2);
- }
- printf("Izlazna datoteka usmeni.txt je kreirana\n");
- fclose(ulaz);
- fclose(izlaz);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement