Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- #include <string.h>
- typedef struct
- {
- char jmeno[50];
- int cislo;
- }Uzivatel;
- void bubblesort(Uzivatel *u, int pocet);
- int main()
- {
- FILE *vstup1, *vstup2, *vystup, *original, *kopie;
- char c;
- int cislo, pocet = 0, i;
- Uzivatel *u;
- if ((vstup1 = fopen("cisla.bin", "rb")) == NULL)
- return -1;
- if ((vstup2 = fopen("jmena.txt", "r")) == NULL)
- return -1;
- if ((vystup = fopen("uzivatele.txt", "w")) == NULL)
- return -1;
- while ((fread(&cislo, sizeof(int), 1, vstup1) == 1))
- pocet++;
- u = (Uzivatel*)malloc(pocet * sizeof(Uzivatel));
- fseek(vstup1, 0, SEEK_SET);
- for (i = 0; i < pocet; i++)
- {
- fread(&(u[i].cislo), sizeof(int), 1, vstup1);
- //fgets(u[i].jmeno, 50, vstup2); //cte i \n, zbytecne zalomi radek
- fscanf(vstup2, "%s", u[i].jmeno);
- }
- bubblesort(u, pocet);
- for (i = 0; i < pocet; i++)
- {
- fprintf(vystup, "%s %d\n", u[i].jmeno, u[i].cislo);
- }
- fclose(vstup1);
- fclose(vstup2);
- fclose(vystup);
- free(u);
- u = NULL;
- if ((original = fopen("original.txt", "r")) == NULL)
- return -1;
- if ((kopie = fopen("kopie.txt", "w")) == NULL)
- return -1;
- while ((c = getc(original)) != EOF)
- putc(c, kopie);
- fclose(original);
- fclose(kopie);
- system("PAUSE");
- return 0;
- }
- void bubblesort(Uzivatel *u, int pocet)
- {
- int i, j;
- Uzivatel temp;
- for (j = pocet - 1; j >= 0; j--)
- {
- for (i = 0; i < j; i++)
- {
- if (u[i].cislo > u[i + 1].cislo)
- {
- temp = u[i];
- u[i] = u[i + 1];
- u[i + 1] = temp;
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement