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

int compare ( const void *pa, const void *pb )
{
    const int *a = pa;
    const int *b = pb;
    if(a[0] == b[0])
        return a[1] - b[1];
    else
        return a[0] - b[0];
}

int main(void)
{
	srand((unsigned)time(NULL));
	int n = 5;
    int array[n][2];
    int i;

    for (i = 0; i < n; i++)
	{
        array[i][0] = rand()%6;
        array[i][1] = i;
    }
    for(i = 0; i < n; ++i)
        printf("%2d, %2d\n", array[i][0], array[i][1]);

    printf("\n");

    qsort(array, n, sizeof array[0], compare);

    for(i = 0;i < n;++i)
        printf("%2d, %2d\n", array[i][0], array[i][1]);
}