使用C语言,输入n(n<=100)个整数,按照绝对值从大到小排序后输出,输出时空格隔开,最后一位数后面没有空格
时间: 2024-05-10 16:14:59 浏览: 14
以下是使用冒泡排序实现的代码:
```c
#include <stdio.h>
#include <stdlib.h>
#define MAX_NUM 100
void bubble_sort(int arr[], int n);
int main() {
int n, i;
int arr[MAX_NUM];
// 读入n个整数
scanf("%d", &n);
for (i = 0; i < n; i++) {
scanf("%d", &arr[i]);
}
// 冒泡排序
bubble_sort(arr, n);
// 输出排序后的结果
for (i = 0; i < n; i++) {
if (i == n - 1) {
printf("%d", arr[i]);
} else {
printf("%d ", arr[i]);
}
}
printf("\n");
return 0;
}
void bubble_sort(int arr[], int n) {
int i, j, temp;
for (i = 0; i < n - 1; i++) {
for (j = 0; j < n - 1 - i; j++) {
if (abs(arr[j]) < abs(arr[j+1])) {
temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
}
```
输入示例:
```
5
-2 3 -1 5 4
```
输出示例:
```
-5 4 -3 2 1
```