使用C++编写程序:
题目描述
从键盘输入三个整数x,y和z,按从大到小的顺序输出它们的值。
输入
输入三个整数x,y和z。
输出
按从大到小的顺序输出它们的值。
样例输入 Copy
20 16 18
样例输出 Copy
20 18 16
程序代码如下:
#include<iostream>
#include<iomanip>
#include<algorithm> // 因为用了stable_sort()
#include<functional> //因为使用了greater<>()
#define ElemType float
#define MaxSize 3
using namespace std;
class DescendingSort
{
public:
DescendingSort(ElemType Num[]);
void GetResult();
private:
ElemType Number[MaxSize];
};
inline DescendingSort::DescendingSort(ElemType Num[])
{
for (int i = 0; i < MaxSize; i++)
Number[i] = Num[i];
}
inline void DescendingSort::GetResult()
{
stable_sort(Number, Number + MaxSize, greater<ElemType>()); //降序排序
for (int i = 0; i < MaxSize; i++)
cout << Number[i] << " ";
}
int main()
{
ElemType NUM[MaxSize];
for (int i = 0; i < MaxSize; i++)
cin >> NUM[i];
DescendingSort DeSort(NUM);
DeSort.GetResult();
return 0;
}