Advertisement
Guest User

Untitled

a guest
Jan 18th, 2018
198
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>
  4. typedef struct
  5. {
  6.     int ID;
  7.     struct osoba
  8.     {
  9.         char Imie[20];
  10.         char Nazwisko[20];
  11.     } osoba;
  12. } osoba;
  13. int sortuj_Imie(const void * a, const void * b)
  14. {
  15.     const osoba* el1=a;
  16.     const osoba* el2=b;
  17.     return strcmp(el1->osoba.Imie,el2->osoba.Imie);
  18.     return 0;
  19. }
  20. int main()
  21. {
  22.     int m,i,j,a;
  23.     printf("Podaj ilosc nazwisk do posegregowania ");
  24.     scanf("%d",&m);
  25.     osoba *tab=malloc(m*sizeof(osoba));
  26.     for(i=0; i<m; i++)
  27.     {
  28.         a=i;
  29.         tab[i].ID=(a++);
  30.         printf("Podaj imie i nazwisko osoby: ");
  31.         scanf("%s %s",&tab[i].osoba.Imie,&tab[i].osoba.Nazwisko);
  32.     }
  33.     printf("Przed sortowaniem\n");
  34.     for(j=0; j<m; j++)
  35.     {
  36.         printf("Nr %d Imie: %s \t Nazwisko: %s\n",tab[j].ID,tab[j].osoba.Imie,tab[j].osoba.Nazwisko);
  37.     }
  38.     qsort(tab,m,sizeof(osoba),sortuj_Imie);
  39.     printf("\nDane posortowane wedlug imienia: \n");
  40.     for(i=0; i<m; i++)
  41.     {
  42.         printf("NR %d Imie: %s \t Nazwisko %s\n",tab[i].ID,tab[i].osoba.Imie,tab[i].osoba.Nazwisko);
  43.     }
  44.     free(tab);
  45.     return 0;
  46. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement