描述
依次输入3个整数a、b、c,将他们从小到大的顺序输出。
输入描述
一行3个整数a、b、c,以空格分隔。0 < a,b,c < 108
输出描述
一行3个整数,即将a、b、c从小到大排序的3个整数,整数之间以一个空格分隔。
用例输入
10 5 20
用例输出
5 10 20
做这道题之前,我们先引入swap函数,swap函数用于交换两个数的值,比如以下代码可以将a与b交换输出。
#include<iostream>
using namespace std;
int main()
{
int a=4,b=3;
swap(a,b);//交换a与b的值
cout<<a<<" "<<b;
return 0;
}
现在开始做这道题。
首先我们将a与b进行比较,如果a比较大,那么就将a与b的值交换,否则不做任何处理。
if(a>b) swap(a,b);
这时的a的值肯定比b小。
同理,将a与c进行比较,如果a比较大,那么就将a与c的值交换,否则a<=c,这时a就是原先的a,b,c中的最小值。
if(a>c) swap(a,c);
这时我们只需再比较一下b与c即可。
if(b>c) swap(b,c);
最后将a,b,c直接输出。
cout<<a<<" "<<b<<" "<<c;
完整代码如下:
#include<iostream>
using namespace std;
int main()
{
int a,b,c;
cin>>a>>b>>c;
if(a>b) swap(a,b);
if(a>c) swap(a,c);
if(b>c) swap(b,c);
cout<<a<<" "<<b<<" "<<c;
return 0;
}
怎么样,简单吧?