_abraxas

Untitled

Aug 1st, 2013
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.70 KB | None | 0 0
  1. #include <time.h>
  2. #include <stdlib.h>
  3. #include <stdio.h>
  4.  
  5. void random_ocjene();
  6. float *ocijeni (char tocni[], char stud_odgovori[][6]);
  7.  
  8.    int main (){
  9.  
  10.     random_ocjene();
  11.     int i,j;
  12.     FILE *dat;
  13.     char tocni_odgovori[6]={'D', 'B', 'C', 'A', 'A', 'C'};
  14.     char student[10][6];
  15.     float *rezultati;
  16.     char temp;
  17.  
  18.     dat = fopen("rezultati.txt","r");
  19.     if (dat==NULL){
  20.      printf("Greska pri otvaranj\n");
  21.      exit(1);
  22.     }
  23.  
  24.     for (i=0;i<10;i++){
  25.         for (j=0;j<12;j++){
  26.         temp=getc(dat);
  27.             if (temp!=' '){
  28.              student[i][j/2]=temp;
  29.             }
  30.         }
  31.     }
  32.     rezultati = ocijeni(tocni_odgovori, student);
  33.     for (i=0;i<10;i++){
  34.         printf("Student broj %d postigao je %.2f bodova.\n", i+1, rezultati[i]);
  35.     }
  36.  
  37.     fclose(dat);
  38.  
  39. }
  40.  
  41. void random_ocjene(){
  42.  
  43.  srand(time(NULL));
  44.  FILE *dat;
  45.  dat = fopen("rezultati.txt","w");
  46.  int i,j;
  47.  int broj;
  48.  
  49.  for (i=0;i<10;i++){
  50.  
  51.    for (j=0;j<6;j++){
  52.        broj = (rand() % 5) + 1;
  53.      switch (broj){
  54.      case 1:
  55.        putc('A', dat);
  56.      break;
  57.      case 2:
  58.        putc('B', dat);
  59.      break;
  60.      case 3:
  61.        putc('C', dat);
  62.      break;
  63.      case 4:
  64.        putc ('D', dat);
  65.      break;
  66.  
  67.      case 5:
  68.        putc('-', dat);
  69.      break;
  70.  
  71.      }
  72.      putc(' ', dat);
  73.    }
  74.  
  75.    putc('\n',dat);
  76.  }
  77.  
  78.  fclose(dat);
  79.  
  80. }
  81.  
  82. float *ocijeni (char tocni[], char stud_odgovori[][6]){
  83. int i,j;
  84. static float rezultati[10];
  85.  
  86. for(i=0;i<10;i++){
  87.     rezultati[i]=0;
  88.     for (j=0;j<6;j++){
  89.        if (tocni[j]==stud_odgovori[i][j])
  90.          rezultati[i]+=1;
  91.        else if (stud_odgovori[i][j]!='-')
  92.          rezultati[i]-=0.5;
  93.     }
  94. }
  95. return rezultati;
  96. }
Advertisement
Add Comment
Please, Sign In to add comment