C语言:输入一个正整数n(1<n<=10),再输入n个整数,按绝对值从小到大排序输出
时间: 2023-09-30 16:07:55 浏览: 167
c代码-C语言三个数从小到大排序/输出: 任意输入 3 个整数,编程实现对这 3 个整数由小到大进行排序。 冒泡排序的动画 https://haokan.baidu.com/v?vid=8080732080990475789&pd=bjh&fr=bjhauthor&type=video
好的,这是一个关于排序的问题,让我想一下...将这些数按绝对值从小到大排序,可以先将它们全部取绝对值,然后按照普通排序方式进行排序即可。以下是具体实现的 C 语言代码:
```
#include <stdio.h>
#include <stdlib.h>
#define MAX_N 10
int cmp(const void *a, const void *b) {
return abs(*(int*)a) - abs(*(int*)b);
}
int main() {
int n;
int a[MAX_N];
scanf("%d", &n);
for (int i = 0; i < n; i++) {
scanf("%d", &a[i]);
}
qsort(a, n, sizeof(int), cmp);
for (int i = 0; i < n; i++) {
printf("%d ", a[i]);
}
return 0;
}
```
阅读全文