Advertisement
Guest User

Untitled

a guest
Sep 4th, 2015
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 0.81 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h> // bsearch()
  3.  
  4. int cmp(const void *aptr, const void *bptr)
  5. {
  6.    int a = *(int *)aptr;
  7.    int b = *(int *)bptr;
  8.  
  9.    return (a > b) - (a < b);
  10. }
  11.  
  12. void print_arr(char *msg, int *arr, int size)
  13. {
  14.    printf("%s\n", msg);
  15.  
  16.    for(int i = 0; i < size; i++)
  17.       printf("%d ", arr[i]);
  18.  
  19.    printf("\n\n");
  20. }
  21.  
  22. int main(int argc, int *argv[])
  23. {
  24.    int num[] = {3, -1, 9, 99, 1, 48};
  25.    int key = 9;
  26.    
  27.    int *ret = bsearch(&key, num, sizeof(num) / sizeof(num[0]), sizeof(num[0]), cmp);
  28.  
  29.    if(ret != NULL)
  30.       printf("key '%d' found inside num[] array!\n\n", key);
  31.  
  32.    print_arr("before sort :", num, sizeof(num) / sizeof(num[0]));
  33.    qsort(num, sizeof(num) / sizeof(num[0]), sizeof(num[0]), cmp);
  34.    print_arr("after sort :", num, sizeof(num) / sizeof(num[0]));
  35. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement