4. 在main函数中输入一组整数,定义一个指针函数,在指针函数中将这一组数排序后,返回main函数中将这一组排好序的数输出。用c语言
时间: 2024-12-20 21:21:13 浏览: 3
在 C 语言中,我们可以定义一个指针函数来对一组整数进行排序,比如使用冒泡排序、选择排序或快速排序等算法。下面我将演示一种简单的冒泡排序的例子,这个函数接受一个整数数组的指针,对数组进行排序后返回:
```c
#include <stdio.h>
// 指针函数,用于对整数数组进行排序
void sort_array(int* arr, int size) {
for (int i = 0; i < size - 1; i++) {
for (int j = 0; j < size - 1 - i; j++) {
if (arr[j] > arr[j + 1]) {
// 交换元素
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
}
int main() {
int n;
printf("Enter the number of integers to sort: ");
scanf("%d", &n);
// 动态分配数组
int* input_array = (int*)malloc(n * sizeof(int));
printf("Enter the numbers: ");
for (int i = 0; i < n; i++) {
scanf("%d", input_array + i);
}
// 对输入数组排序
sort_array(input_array, n);
printf("Sorted array: ");
for (int i = 0; i < n; i++) {
printf("%d ", input_array[i]);
}
printf("\n");
// 释放内存
free(input_array);
return 0;
}
```
在这个程序里,用户首先输入要排序的整数个数,然后输入这些数值。`sort_array`函数会接收数组的首地址和大小作为参数,对输入的整数进行排序。最后在`main`函数中输出排序后的结果,并记得在结束后释放动态分配的内存。
阅读全文