编写一个c语言程序,随机生成10个100以内的数,利用快速排序算法进行排序,并附上注释
时间: 2024-05-06 20:21:52 浏览: 11
好的,让我来写一个能够随机生成10个100以内的数,并且利用快速排序算法进行排序的C语言程序。
```
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
/*快速排序算法*/
void quickSort(int arr[], int left, int right)
{
int i, j, pivot, temp;
if(left<right){
pivot=arr[left];
i=left;
j=right;
while(i<j){
while(arr[i]<=pivot&&i<right)
i++;
while(arr[j]>pivot)
j--;
if(i<j){
temp=arr[i];
arr[i]=arr[j];
arr[j]=temp;
}
}
arr[left]=arr[j];
arr[j]=pivot;
quickSort(arr,left,j-1);
quickSort(arr,j+1,right);
}
}
int main()
{
int arr[10], i;
srand(time(NULL)); // 设定随机数种子,确保每次结果的不同性
printf("随机生成的数组为: ");
for (i = 0; i < 10; i++)
{
arr[i] = rand() % 100; // 生成10个100以内的随机数
printf("%d ", arr[i]);
}
printf("\n排序后的数组为: ");
quickSort(arr, 0, 9); // 调用快速排序算法
for (i = 0; i < 10; i++)
printf("%d ", arr[i]);
printf("\n");
return 0;
}
```
以上便是一个随机生成10个100以内的数,并且利用快速排序算法进行排序的C语言程序。