SHARE
TWEET

Untitled

a guest Jan 17th, 2020 73 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #include <stdio.h>
  2. #include <stdlib.h> /* Zbog funkcije exit() */
  3.  
  4. struct Student {
  5.     char prezime[20];
  6.     char ime[15];
  7.     int  broj_bodova1;
  8.     int broj_bodova2;
  9. };
  10.  
  11. void unesi(char niz[], int velicina)
  12. {
  13.     char znak = getchar();
  14.     if (znak == '\n') znak=getchar();
  15.     int i = 0;
  16.     while (i < velicina-1 && znak != '\n') {
  17.         niz[i] = znak;
  18.         i++;
  19.         znak = getchar();
  20.     }
  21.     niz[i]='\0';
  22. }
  23.  
  24. struct Student novi_student() {
  25.     struct Student covjek;
  26.     printf("Unesite ime: ");
  27.     unesi(covjek.ime, 10);
  28.     printf("Unesite prezime: ");
  29.     unesi(covjek.prezime, 15);
  30.     printf("Unesite broj bodova na I parcijalnom: ");
  31.     scanf("%d", &covjek.broj_bodova1);
  32.     printf("Unesite broj bodova na II parcijalnom: ");
  33.     scanf("%d", &covjek.broj_bodova2);
  34.     return covjek;
  35. }
  36. int main()
  37. {
  38.     struct Student studenti[300],student;
  39.     FILE *ulaz, *ulaz2;
  40.     int i, j, vel, meni;
  41.     if ((ulaz = fopen("ispit.txt","a")) == NULL) {
  42.         printf("Greska pri otvaranju datoteke ispit.txt\n");
  43.         return 1;
  44.     }
  45.     if ((ulaz2 = fopen("ispit.txt","r")) == NULL) {
  46.     printf("Greska pri otvaranju datoteke ispit.txt\n");
  47.         return 1;
  48.     }
  49.  
  50.     do {
  51.          printf("Unesite 1 za unos, 2 za ispis, 0 za izlaz: ");
  52.         scanf("%d",&meni);
  53.    
  54.          switch(meni) {
  55.         case 0: break;
  56.  
  57.          case 1:
  58.             student = novi_student();
  59.             fprintf(ulaz,"%-20s%-15s%2d %2d\n",student.prezime,student.ime,student.broj_bodova1,student.broj_bodova2);
  60.             fflush(ulaz);
  61.             break;
  62.            
  63.         case 2:
  64.             i=0;
  65.             while (i<300 && fscanf(ulaz2,"%20s%15s%2d %2d\n", studenti[i].prezime, studenti[i].ime, &studenti[i].broj_bodova1, &studenti[i].broj_bodova2) == 4) {
  66.                 i++;
  67.             }
  68.             for(j=0; j<i; j++)
  69.             printf("\n%d. %s %s - %d, %d",j+1,studenti[j].ime, studenti[j].prezime, studenti[j].broj_bodova1, studenti[j].broj_bodova2);
  70.             printf("\n");
  71.             break;
  72.          }
  73.  
  74.     }while(meni!=0);
  75.     fclose(ulaz);
  76.     fclose(ulaz2);
  77.     return 0;
  78.  
  79. }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
Top