利用指针作为函数的形参,实现将10个整数从小到大排序并输出
时间: 2024-09-17 08:05:16 浏览: 40
利用指针作为函数的形参,在C语言中通常可以实现通过传递数组的首地址来进行操作,例如对数组进行排序。这里我们演示如何使用冒泡排序算法来对整数数组进行升序排列:
```c
#include <stdio.h>
// 定义一个函数,接受指向整数数组的指针以及数组的大小
void bubbleSort(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 numbers[10] = {5, 3, 8, 1, 9, 4, 7, 6, 2, 10}; // 待排序的10个整数
int len = sizeof(numbers) / sizeof(numbers[0]); // 计算数组长度
printf("原始数组:");
for (int i = 0; i < len; i++) {
printf("%d ", numbers[i]);
}
bubbleSort(numbers, len); // 调用函数进行排序
printf("\n排序后数组:");
for (int i = 0; i < len; i++) {
printf("%d ", numbers[i]);
}
return 0;
}
```
在这个例子中,`bubbleSort`函数通过指针`arr`访问并修改了输入数组的内容。运行上述代码,你会看到原始数组按升序排列的结果。
阅读全文