c语言定义函数,以指针作为函数的形式参数,实现对n个数据进行排序。在主函数中调用此函数。
时间: 2024-02-21 16:58:11 浏览: 48
可以使用指针作为函数的形式参数,实现对 n 个数据进行排序的功能,具体方法如下:
```c
void sort(int *arr, int n) {
int i, j, temp;
for(i = 0; i < n-1; i++) {
for(j = i+1; j < n; j++) {
if(*(arr+i) > *(arr+j)) {
temp = *(arr+i);
*(arr+i) = *(arr+j);
*(arr+j) = temp;
}
}
}
}
int main() {
int n, i;
printf("Enter the number of elements: ");
scanf("%d", &n);
int arr[n];
printf("Enter %d elements: ", n);
for(i = 0; i < n; i++) {
scanf("%d", &arr[i]);
}
sort(arr, n);
printf("Sorted elements: ");
for(i = 0; i < n; i++) {
printf("%d ", arr[i]);
}
printf("\n");
return 0;
}
```
在上面的代码中,我们定义了一个名为 `sort` 的函数,该函数接受一个指向整数的指针和整数 n 作为参数。在函数内部,我们使用嵌套循环来实现选择排序,并通过指针对数组中的元素进行交换。最后,我们在 `main` 函数中声明了一个大小为 n 的数组,并使用循环来获取用户输入的元素值。接着,我们调用 `sort` 函数,将数组的地址和元素个数作为参数传递给它。最后,我们使用循环来输出排序后的元素值。
阅读全文