Для сортировки массива есть несколько алгоритмов, которые могут вам помочь, одним из наиболее часто используемых является быстрая сортировка.Вот полный код для сортировки массива:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
void Swap(int array[], int i, int j)
{
int temp;
temp = array[i];
array[i] = array[j];
array[j] = temp;
}
void QuickSort(int array[], int beg, int end)
{
int pivot, k, b, e;
while(beg < end)
{
b = beg; k = (beg+end)/2; e = end;
pivot = array[k];
while(1)
{
while((b <= e) && (array[b] <= pivot)) b++;
while((b <= e) && (array[e] > pivot)) e--;
if(b > e) break;
Swap(array, b, e);
if(k == e) k = b;
b++; e--;
}
array[k]=array[e];
array[e]=pivot;
e--;
if((e-beg)<(end-b))
{
QuickSort(array, beg, e);
beg = b;
}
else
{
QuickSort(array, b, end);
end = e;
}
}
return ;
}
void display(int * array, int n)
{
for(int i = 0; i < n ; i++)
{
printf("%d\n", array[i]);
}
}
int main()
{
int array[] = {1,2,77,5,42,33,0,4,12,21,55}; //array to sort, instead you can use a function that fills an array, and then pass it to QuickSort function
QuickSort(array,0,sizeof(array)/sizeof(int));
display(array, sizeof(array)/sizeof(int));
return 0;
}