代码如下:
#include<stdio.h>
#include<string.h>
void quicksort(int *arr, int begin, int end)
{
if (begin > end)
{
return;
}
int i = begin;
int j = end;
int temp = arr[begin];
while (i < j)
{
while (i < j && arr[j] > temp)
{
j--;
}
if (i < j)
arr[i] = arr[j];
while (i < j && arr[i] <= temp)
{
i++;
}
if (i < j)
arr[j] = arr[i];
if (i >= j)
{
arr[i] = temp;
}
}
arr[j] = arr[i];
quicksort(arr, begin, i - 1);
quicksort(arr, i + 1, end);
}
int main()
{
printf("请输入多少个字符:\n");
int num[100] /*={1,3,2,3,4,3,2,9};*/ , count;
int i;
scanf("%d", &count);
printf("请输入%d个需要排序的字符\n", count);
for (i = 0; i < count; i++)
{
scanf("%d", &num[i]);
}
quicksort(num, 0, count - 1);
printf("排序好的字符:\n");
for (i = 0; i < count; i++)
{
printf("%-3d", num[i]);
}
return 0;
}