Listing 3

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

int comp(unsigned char **, unsigned char **);
unsigned char *list[] = ( "cat", "car", "cab", "cap", "can" };

main()
{
int x;

qsort(list, 5, sizeof(unsigned char *), comp);
for (x = 0; x < 5; x++)
  printf("%s\n", list[x]);
return 0;
}

int comp(unsigned char **a, unsigned char **b)
{
return strcmp(*a, *b);
}