算法训练 排序
时间限制:1.0s 内存限制:512.0MB
问题描述
编写一个程序,输入3个整数,然后程序将对这三个整数按照从大到小进行排列。
输入格式:输入只有一行,即三个整数,中间用空格隔开。
输出格式:输出只有一行,即排序后的结果。
输入输出样例
样例输入
9 2 30
样例输出
30 9 2
分析:由于只有三个整数,再用sort和其他一些排序方法反而没必要了。个人推荐直接if-else吧。
emmm……虽然关键字是循环语句,但是就当练习if嵌套了……代码如下:
#include <iostream>
using namespace std;
int main()
{
//定义三个整形变量a, b, c
int a, b, c;
//输入
cin >> a >> b >> c;
//由于数很少,采用if-else方式进行输出
if(a > b) //a>b
{
if(a > c) //a>b,a>c
{
cout << a << " ";
if(b > c) cout << b << " " << c; //a>b>c
else cout << c << " " << b; //a>c>b
}
else cout << c << " " << a << " " << b; //c>a>b
}
else //a<b
{
if(b > c) //a<b, b>c
{
cout << b << " ";
if(a > c) cout << a << " " << c; //b>a>c
else cout << c << " " << a; //b>c>a
}
else cout << c << " " << b << " " << a; //c>b>a
}
return 0;
}