Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- struct Student {
- char prezime[20];
- char ime[15];
- int broj_bodova1, broj_bodova2;
- };
- void unesi(char *string, int velicina) {
- int i = 0;
- char c = getchar();
- if (c == '\n') c = getchar();
- while (i < velicina - 1 && c != '\n') {
- string[i] = c;
- i++;
- c = getchar();
- }
- string[i] = '\0';
- }
- void unos() {
- struct Student student;
- FILE *unos;
- unos = fopen("ispit.txt", "a");
- if (!unos) {
- printf("Greska pri otvaranju datoteke za pisanje.\n");
- return;
- }
- printf("Unesite ime: ");
- unesi(student.ime, 15);
- printf("Unesite prezime: ");
- unesi(student.prezime, 20);
- printf("Unesite broj bodova na I parcijalnom: ");
- scanf("%d", &student.broj_bodova1);
- printf("Unesite broj bodova na II parcijalnom: ");
- scanf("%d", &student.broj_bodova2);
- fprintf(unos, "%-20s%-15s%2d %2d\n", student.prezime, student.ime, student.broj_bodova1, student.broj_bodova2);
- fclose(unos);
- }
- void ispis() {
- struct Student studenti[50];
- int i = 0, velicina;
- FILE *ulaz;
- ulaz = fopen("ispit.txt", "r");
- if (!ulaz) {
- printf("Greska pri ucitavanju datoteke za citanje.\n");
- return;
- }
- while (i < 50 && fscanf(ulaz, "%20s%15s%2d%2d", studenti[i].prezime, studenti[i].ime, &studenti[i].broj_bodova1, &studenti[i].broj_bodova2) == 4)
- i++;
- velicina = i;
- fclose(ulaz);
- for (i = 0; i < velicina; i++) {
- printf("\n%d. %s %s - %d, %d\n", i + 1, studenti[i].ime, studenti[i].prezime, studenti[i].broj_bodova1, studenti[i].broj_bodova2);
- }
- }
- int main() {
- int opcija;
- do {
- printf("Unesite 1 za unos, 2 za ispis, 0 za izlaz: ");
- scanf("%d", &opcija);
- switch (opcija) {
- case 1:
- unos();
- break;
- case 2:
- ispis();
- break;
- case 0:
- break;
- default:
- printf("Pogresan unos!\n");
- }
- } while (opcija != 0);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement