解题思路:
直接结构体排序,一个是源数据,一个是绝对值数据.
参考代码:
#include<bits/stdc++.h> using namespace std; struct num { int pre; int ter; }a[101]; bool comp(num& x, num& y) { return x.ter > y.ter; } int main() { int n; while (cin >> n && n != 0) { for (int i = 0; i < n; i++) { cin >> a[i].pre; a[i].ter = abs(a[i].pre); } sort(a, a + n, comp); for (int i = 0; i < n; i++) { cout << a[i].pre; if (i != n - 1) cout << " "; else cout << endl; } } }
0.0分
3 人评分
C语言程序设计教程(第三版)课后习题7.1 (C语言代码)浏览:512 |
A+B for Input-Output Practice (V) (C语言代码)浏览:617 |
DNA (C语言描述,数据结构)浏览:850 |
C语言程序设计教程(第三版)课后习题6.3 (C++代码)浏览:944 |
简单的a+b (C语言代码)浏览:943 |
单词个数统计 (C语言代码)浏览:1009 |
C语言训练-8除不尽的数 (C语言代码)浏览:1396 |
10月月赛题解浏览:536 |
整数分类问题 为什么输出总是数字8啊浏览:442 |
A+B for Input-Output Practice (IV) (C语言代码)浏览:663 |