指针数组随机生成10个数,怎么排序
时间: 2024-03-08 11:50:25 浏览: 43
可以使用冒泡排序或快速排序对指针数组进行排序。
示例代码如下(冒泡排序):
```c
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define SIZE 10
void bubble_sort(int *arr[], int n);
int main()
{
int i, arr[SIZE], *ptr[SIZE];
// 随机生成10个数
srand(time(NULL));
for (i = 0; i < SIZE; i++) {
arr[i] = rand() % 100;
ptr[i] = &arr[i];
printf("%d ", *ptr[i]);
}
// 冒泡排序
bubble_sort(ptr, SIZE);
printf("\nSorted: ");
for (i = 0; i < SIZE; i++) {
printf("%d ", *ptr[i]);
}
return 0;
}
void bubble_sort(int *arr[], int n)
{
int i, j;
for (i = 0; i < n - 1; i++) {
for (j = 0; j < n - i - 1; j++) {
if (*arr[j] > *arr[j+1]) {
int *temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
}
```
在这个示例代码中,我们首先生成了一个包含10个随机数的数组,然后将每个数组元素的地址存储在指针数组中。接着使用冒泡排序对指针数组进行排序,最后输出排序后的结果。
阅读全文