Tilbage til slide -- Tastaturgenvej: 'u'        næste -- Tastaturgenvej: 'n'          arrays/qsort-application.c - Anvendelse af qsort til sortering af et heltals array.Lektion 9 - slide 19 : 30
Program 1

#include <stdio.h>
#include <stdlib.h>

void   prn_array(char* s, const int a[], int n);
int element_compare(const void *ip1, const void *ip2);

int main(void){
  int   a[] = {7, 3, 66, 3, -5, 22, -77, 2};
  int   n;

  n = sizeof(a) / sizeof(int);    /* Notice how the size of a is found */
  prn_array("Before", a, n);
  
  qsort(a, n, sizeof(int), element_compare);

  prn_array(" After", a, n);
  putchar('\n');
  return 0;
}

int element_compare(const void *ip1, const void *ip2){
  int result;
  int *ipi1 = (int *)ip1,         /* Cast parameters to pointers to int */
      *ipi2 = (int *) ip2;

  if (*ipi1 < *ipi2)
     result = -1;
  else if (*ipi1 > *ipi2)
     result = 1;
  else
     result = 0;

  return result;
}

void prn_array(char* s , const int a[] , int n){
   int   i;

   printf("\n    %s sorting:", s);
   for (i = 0; i < n; ++i)
      printf("%5d", a[i]);
   putchar('\n');
}