Listing 2

#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);
     }