c语言利用指针作为函数的形参,实现10个整数由小到大排序。
时间: 2024-09-10 20:28:30 浏览: 97
在 C 语言中,通过指针作为函数的形参,可以实现对数组元素的直接操作,进而完成排序。这里我们可以使用经典的冒泡排序算法,它是一种简单直观的排序方法。假设我们有一个名为 `sort` 的函数,接收一个指向整数数组的指针以及数组长度:
```c
#include <stdio.h>
// 冒泡排序函数,接受一个指针和数组长度作为参数
void sort(int* arr, int n) {
for (int i = 0; i < n - 1; i++) { // 遍历所有元素
for (int j = 0; j < n - 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, 2, 9, 1, 7, 4, 6, 8, 3, 0}; // 待排序的10个整数
int length = sizeof(numbers) / sizeof(numbers[0]);
printf("Before sorting:\n");
for (int i = 0; i < length; i++) {
printf("%d ", numbers[i]);
}
sort(&numbers, length); // 使用指针调用排序函数
printf("\nAfter sorting in ascending order:\n");
for (int i = 0; i < length; i++) {
printf("%d ", numbers[i]);
}
return 0;
}
```
在这个例子中,`sort` 函数通过修改数组的元素值来实现升序排列。运行 `main` 函数后,可以看到输入的10个整数已经按照从小到大的顺序排列。
阅读全文
相关推荐
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)