In this tutorial, i am going to show you how to implement quick sort program in c.

**A sorting technique that sequences a list by continuously dividing the list into two parts and moving the lower items to one side and the higher items to the other**. It starts by picking one item in the entire list to serve as a pivot point.

## C Program for Quick Sort

#include <stdio.h> void Swap(int *x, int *y) { int Temp; Temp = *x; *x = *y; *y = Temp; } void quickSort(int a[], int first, int last) { int pivot, i, j; if(first < last) { pivot = first; i = first; j = last; while (i < j) { while(a[i] <= a[pivot] && i < last) i++; while(a[j] > a[pivot]) j--; if(i < j) { Swap(&a[i], &a[j]); } } Swap(&a[pivot], &a[j]); quickSort(a, first, j - 1); quickSort(a, j + 1, last); } } int main() { int a[100], number, i; printf("\n Please Enter the total Number of Elements : "); scanf("%d", &number); printf("\n Please Enter the Array Elements : "); for(i = 0; i < number; i++) scanf("%d", &a[i]); quickSort(a, 0, number - 1); printf("\n Selection Sort Result : "); for(i = 0; i < number; i++) { printf(" %d \t", a[i]); } printf("\n"); return 0; }

The result of the above c program; is as follows:

Please Enter the total Number of Elements : 5 Please Enter the Array Elements : 5 2 4 9 1 Selection Sort Result : 1 2 4 5 9