利用指针作为函数的形参,实现将10个整数从小到大排列输出
时间: 2024-09-09 08:16:06 浏览: 114
在C语言中,如果你想通过指针作为函数的形参来排序数组,通常我们会选择冒泡排序、快速排序或其他已有的排序算法。这里以冒泡排序为例,展示如何实现:
```c
#include <stdio.h>
// 定义交换两个元素的函数,利用指针间接修改数组
void swap(int* a, int* b) {
int temp = *a;
*a = *b;
*b = temp;
}
// 冒泡排序函数,传入指向数组的指针和数组长度
void bubble_sort(int* arr, int size) {
for (int i = 0; i < size - 1; i++) {
for (int j = 0; j < size - i - 1; j++) {
if (arr[j] > arr[j + 1]) {
swap(&arr[j], &arr[j + 1]);
}
}
}
}
int main() {
int numbers[10] = {10, 9, 8, 7, 6, 5, 4, 3, 2, 1}; // 待排序的数组
int length = sizeof(numbers) / sizeof(numbers[0]);
bubble_sort(numbers, length);
printf("排序后的数组:");
for (int i = 0; i < length; i++) {
printf("%d ", numbers[i]);
}
printf("\n");
return 0;
}
```
在这个例子中,`bubble_sort`函数接收一个整数数组的地址和数组大小,然后内部通过指针操作对数组进行升序排列。
阅读全文