不使用函数将指针数组进行排序
时间: 2024-05-10 15:18:00 浏览: 4
下面是一个示例代码,使用冒泡排序对指针数组进行排序:
```
#include <stdio.h>
int main() {
int arr[] = { 5, 3, 8, 1, 4 };
int *p[5];
// 初始化指针数组
for (int i = 0; i < 5; i++) {
p[i] = &arr[i];
}
// 冒泡排序
for (int i = 0; i < 4; i++) {
for (int j = 0; j < 4 - i; j++) {
if (*p[j] > *p[j + 1]) {
int *temp = p[j];
p[j] = p[j + 1];
p[j + 1] = temp;
}
}
}
// 输出排序后的结果
for (int i = 0; i < 5; i++) {
printf("%d ", *p[i]);
}
return 0;
}
```
在这个示例代码中,我们首先定义了一个整型数组 `arr` 和一个指针数组 `p`。然后,我们使用循环将 `p` 数组中的每一个指针都指向 `arr` 数组中的相应元素。接着,我们使用冒泡排序对 `p` 数组进行排序,排序时使用指针的值进行比较。最后,我们输出排序后的结果,即指向 `arr` 数组中元素的指针所指向的值。