ASCII码排序
时间限制:3000 ms | 内存限制:65535 KB
难度:2
描述
输入三个字符(可以重复)后,按各字符的ASCII码从小到大的顺序输出这三个字符。
输入
第一行输入一个数N,表示有N组测试数据。后面的N行输入多组数据,每组输入数据都是占一行,有三个字符组成,之间无空格。
输出
对于每组输入数据,输出一行,字符中间用一个空格分开。
样例输入
2
qwe
asd
样例输出
e q w
a d s
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
bool cmp(char a,char b)
{
return a<b;
}
int main()
{
int i,j,k;
int n;
char a[5];
scanf("%d",&n);
for(i=0;i<n;i++)
{
memset(a,0,sizeof(a));
scanf("%s",a);
sort(a,a+3,cmp);
for(j=0;j<3;j++)
printf("%c ",a[j]);
printf("\n");
}
return 0;
}
水题,发这个算是复习一下cmp。题目只要求给三个字母排序,所以,用三个变量分别接收,再比较大小也可以,用sort的话多长都可以排序了。