void quicksort(keytype a[], int first, int last)
{
int i, j;
keytype x, t;

x = a[(first + last) / 2];
i = first; j = last;
for ( ; ; ) {
while (a[i] < x) i++;
while (x < a[j]) j--;
if (i >= j) break;
t = a[i]; a[i] = a[j]; a[j] = t;
i++; j--;
}
if (first < i - 1) quicksort(a, first , i - 1);
if (j + 1 < last) quicksort(a, j + 1, last);
}

要素同士の比較回数をpとするとき、上の{}内にp++などを付け加え比較回数を
カウントできるようにしてください。