用C语言编程 任意输入10个数排序并输出。要求输入和输出在主函数,排序在子函数。用指针实现
时间: 2024-02-28 09:56:58 浏览: 52
C语言标准输入输出函数大全
好的,以下是实现代码:
```c
#include <stdio.h>
void sort(int *arr, int n);
int main() {
int arr[10];
int i;
printf("请输入10个数:\n");
for (i = 0; i < 10; i++) {
scanf("%d", &arr[i]);
}
sort(arr, 10);
printf("排序后的结果为:\n");
for (i = 0; i < 10; i++) {
printf("%d ", arr[i]);
}
printf("\n");
return 0;
}
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;
}
}
}
}
```
在上面的代码中,我们定义了一个 `sort` 函数,它使用指针数组对输入的10个数进行排序。我们在主函数中获取输入,然后传递数组指针和数组长度给 `sort` 函数,最后输出排序后的结果。
值得注意的是,`*(arr + i)` 相当于 `arr[i]`,因为指针数组和普通数组在使用上是一样的。
阅读全文