#include <stdio.h>
#define MAXARRAY 10
void quicksort(int arr[], int low, int high);
int main(void) {
int array[MAXARRAY] = {0};
int i = 0,n;
printf(“Enter number of elements”);
scanf(“%d”,&n);
for(i = 0; i < n; i++)
scanf(“%d”,&array[i]);
printf(“Before quicksort: “);
for(i = 0; i < n; i++) {
printf(” %d “, array[i]);
}
printf(“\n”);
quicksort(array, 0, (n – 1));
printf(“After quicksort: “);
for(i = 0; i < n; i++) {
printf(” %d “, array[i]);
}
printf(“\n”);
getch();
return 0;
}
void quicksort(int arr[], int low, int high)
{
int i = low;
int j = high;
int y = 0;
int z = arr[(low + high) / 2];
do
{
while(arr[i] < z) i++;
while(arr[j] > z) j–;
if(i <= j)
{
y = arr[i];
arr[i] = arr[j];
arr[j] = y;
i++;
j–;
}
} while(i <= j);
if(low < j)
quicksort(arr, low, j);
if(i < high)
quicksort(arr, i, high);
}