Advertisement
Guest User

Untitled

a guest
Jan 17th, 2020
93
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.13 KB | None | 0 0
  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. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement