读入整数N(N<100),再读入N个整数存入数组,调用函数实现从小到大排序,然后输出排序后的数组。对数组排序请在函数中用冒泡法实现,函数中的数组元素访问请使用指针技术实现。 输入样例: 10 72 29 5 91 63 32 68 40 57 11 输出样例: 5 11 29 32 40 57 63 68 72 91 注意每行最后没有空格,写一个C语言程序
时间: 2023-06-16 11:04:18 浏览: 188
以下是实现该功能的 C 语言程序:
```c
#include <stdio.h>
void bubble_sort(int *arr, int n) {
for (int i = 0; i < n - 1; i++) {
for (int j = 0; j < n - i - 1; j++) {
if (*(arr + j) > *(arr + j + 1)) {
int temp = *(arr + j);
*(arr + j) = *(arr + j + 1);
*(arr + j + 1) = temp;
}
}
}
}
int main() {
int n;
scanf("%d", &n);
int arr[n];
for (int i = 0; i < n; i++) {
scanf("%d", &arr[i]);
}
bubble_sort(arr, n);
for (int i = 0; i < n - 1; i++) {
printf("%d ", arr[i]);
}
printf("%d", arr[n - 1]);
return 0;
}
```
程序的逻辑比较简单,首先读入整数 N 和 N 个整数存入数组,然后调用 bubble_sort 函数实现冒泡排序,最后输出排序后的数组。冒泡排序的实现中使用了指针技术,即用 *(arr + i) 的形式访问数组元素。输出时需要注意每行最后没有空格。
阅读全文