自定义函数用选择法对10个整数由小到大排 序,指针变量做函数参数完成排序。
时间: 2023-11-21 17:56:31 浏览: 35
可以使用选择排序算法来实现这个函数:
```c
void selectionSort(int* arr, int size) {
int i, j, minIdx, temp;
for (i = 0; i < size - 1; i++) {
minIdx = i;
for (j = i + 1; j < size; j++) {
if (arr[j] < arr[minIdx]) {
minIdx = j;
}
}
if (minIdx != i) {
temp = arr[i];
arr[i] = arr[minIdx];
arr[minIdx] = temp;
}
}
}
```
这个函数接受一个指向整数数组的指针和数组的大小作为参数,使用选择排序算法对数组进行排序。可以在主函数中调用这个函数来对一个整数数组排序:
```c
#include <stdio.h>
void selectionSort(int* arr, int size);
int main() {
int arr[] = { 9, 3, 5, 1, 8, 2, 7, 4, 6, 0 };
int size = sizeof(arr) / sizeof(int);
int i;
printf("Before sorting:\n");
for (i = 0; i < size; i++) {
printf("%d ", arr[i]);
}
printf("\n");
selectionSort(arr, size);
printf("After sorting:\n");
for (i = 0; i < size; i++) {
printf("%d ", arr[i]);
}
printf("\n");
return 0;
}
```
输出:
```
Before sorting:
9 3 5 1 8 2 7 4 6 0
After sorting:
0 1 2 3 4 5 6 7 8 9
```