Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- #include <string.h>
- #define IMEDAT1 "predmeti.txt"
- #define IMEDAT2 "samo_predmeti.txt"
- #define IMEDAT3 "nema_pet.txt"
- #define Fflush(int_keyboard_buffer) while(( (int_keyboard_buffer) = getchar()) != '\n')
- void prijepis_predmeta() {
- FILE *inputfile = NULL;
- FILE *outputfile = NULL;
- unsigned long int jmbag;
- short int ocjena, n, i;
- char predmet[20+1];
- inputfile = fopen(IMEDAT1, "r");
- if (inputfile == NULL)
- {
- printf ("\nGreska kod otvaranja datoteke %s!", IMEDAT1);
- exit(1);
- }
- outputfile = fopen(IMEDAT2, "w");
- if (outputfile == NULL)
- {
- printf ("\nGreska kod otvaranja datoteke %s!", IMEDAT2);
- exit(1);
- }
- printf("\n\n------------------------------------\nIspis datoteke:\n\n");
- while ((fscanf(inputfile, "%010lu#%d#\n", &jmbag, &n)) == 2)
- {
- printf("%010lu %d\n", jmbag, n);
- for(i = 0;i < n;i++)
- {
- fscanf(inputfile,"%[^#]s", predmet);
- fprintf(outputfile, "%s#", predmet);
- fscanf(inputfile, "#%d#", &ocjena);
- printf("%s %d ", predmet, ocjena);
- }
- printf("\n");
- fprintf(outputfile, "\n\n");
- fscanf(inputfile, "\n");
- }
- fclose (inputfile);
- fclose (outputfile);
- }
- void nema_pet() {
- FILE *inputfile = NULL;
- FILE *outputfile = NULL;
- unsigned long int jmbag, backup;
- short int ocjena, n, i, broj_petica = 0;
- char predmet[20+1];
- inputfile = fopen(IMEDAT1, "r");
- if (inputfile == NULL)
- {
- printf ("\nGreska kod otvaranja datoteke %s!", IMEDAT1);
- exit(1);
- }
- outputfile = fopen(IMEDAT3, "w");
- if (outputfile == NULL)
- {
- printf ("\nGreska kod otvaranja datoteke %s!", IMEDAT3);
- exit(1);
- }
- while ((fscanf(inputfile, "%010lu#%d#\n", &jmbag, &n)) == 2)
- {
- backup = jmbag;
- for(i = 0;i < n;i++)
- {
- fscanf(inputfile,"%[^#]s", predmet);
- fscanf(inputfile, "#%d#", &ocjena);
- if (ocjena == 5)
- broj_petica++;
- }
- printf("\n");
- if (broj_petica == 0)
- fprintf(outputfile, "%010lu#\n", backup);
- broj_petica = 0;
- fscanf(inputfile, "\n");
- }
- fclose (inputfile);
- fclose (outputfile);
- }
- int main () {
- FILE *outputfile = NULL;
- unsigned long int jmbag;
- char predmet[20+1];
- short int ocjena, n, i;
- char buffer;
- outputfile = fopen(IMEDAT1, "a");
- if (outputfile == NULL)
- {
- printf ("Greska kod otvaranja datoteke %s!", IMEDAT1);
- exit(1);
- }
- while (1)
- {
- printf("Upisite JMBAG: ");
- scanf("%10lu[^\n]", &jmbag);
- if (jmbag == 0)
- break;
- printf("\nUpisite broj predmeta (od 2 do 6): ");
- do
- {
- scanf("%d", &n);
- }
- while (n < 2 || n > 6);
- fprintf(outputfile, "%010lu#%d#\n", jmbag, n);
- Fflush(buffer);
- for(i = 0;i < n;i++)
- {
- printf("\nUpisite ime %d. predmeta: ", i + 1);
- scanf("%20[^\n]s", predmet);
- fprintf(outputfile, "%s#", predmet);
- printf("\nUpisite ocjenu (od 1 do 5): ");
- do
- {
- scanf("%d", &ocjena);
- if(ocjena < 1 || ocjena > 5)
- Fflush(buffer);
- }
- while (ocjena < 1 || ocjena > 5);
- Fflush(buffer);
- fprintf(outputfile, "%d#", ocjena);
- }
- fprintf(outputfile, "\n");
- printf("\n");
- }
- fclose(outputfile);
- prijepis_predmeta();
- nema_pet();
- return 0;
- }
Add Comment
Please, Sign In to add comment