利用指针作为函数的形参,实现10个整数从小到大排序。
时间: 2024-09-13 10:14:38 浏览: 68
在C语言中,可以通过传递数组的指针作为参数来实现对数组元素的排序。数组名在作为参数传递给函数时,会被解释为指向数组首元素的指针。因此,可以利用这一点来对数组中的元素进行排序。下面是一个使用指针作为函数形参实现10个整数从小到大排序的示例:
```c
#include <stdio.h>
// 函数声明,使用指针作为参数
void sort(int *array, int size);
int main() {
int numbers[10] = {5, 3, 8, 4, 2, 9, 1, 6, 10, 7};
int n = 10; // 数组的长度
// 调用函数进行排序
sort(numbers, n);
// 输出排序后的数组
for (int i = 0; i < n; i++) {
printf("%d ", numbers[i]);
}
printf("\n");
return 0;
}
// 函数定义,使用指针参数对数组进行排序
void sort(int *array, int size) {
int temp;
for (int i = 0; i < size - 1; i++) {
for (int j = 0; j < size - i - 1; j++) {
// 利用指针偏移进行比较和交换
if (*(array + j) > *(array + j + 1)) {
temp = *(array + j);
*(array + j) = *(array + j + 1);
*(array + j + 1) = temp;
}
}
}
}
```
在这个例子中,`sort` 函数接收一个整数指针 `array` 和一个表示数组大小的整数 `size`。函数内部使用了嵌套循环来进行排序,这里实现的是简单的冒泡排序算法。
阅读全文