时间限制:3000 ms | 内存限制:65535 KB
难度:2
描述
输入三个字符(可以重复)后,按各字符的ASCII码从小到大的顺序输出这三个字符。
输入
第一行输入一个数N,表示有N组测试数据。后面的N行输入多组数据,每组输入数据都是占一行,有三个字符组成,之间无空格。
输出
对于每组输入数据,输出一行,字符中间用一个空格分开。
样例输入
2
qwe
asd
样例输出
e q w
a d s
自己写的代码
#include<iostream>
#include<algorithm>
using namespace std;
int main()
{
int n;
char a[3];
cin>>n;
while(n--)
{
cin>>a;
sort(a,a+3);
int i;
for(i=0;i<2;++i)
cout<<a[i]<<" ";
cout<<a[i]<<endl;
}
return 0;
}
最优代码
#include<iostream>
#include<cstring>
#include<cstdio>
using namespace std;
int main()
{
char a,b,c,d;
int i;
cin>>i;
getchar();
while(i--)
{
cin>>a>>b>>c;
getchar();
/*
a b c
3 2 1
*/
if(a>b)swap(a,b);
if(a>c)swap(a,c);
if(b>c)swap(b,c);
cout<<a<<" "<<b<<" "<<c<<endl;
}
return 0;
}