ASCII码排序
时间限制:3000 ms | 内存限制:65535 KB
难度:2
描述
输入三个字符(可以重复)后,按各字符的ASCII码从小到大的顺序输出这三个字符。
输入
第一行输入一个数N,表示有N组测试数据。后面的N行输入多组数据,每组输入数据都是占一行,有三个字符组成,之间无空格。
输出
对于每组输入数据,输出一行,字符中间用一个空格分开。
样例输入
2
qwe
asd
样例输出
e q w
a d s
来源
网络
上传者
naonao
问题链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=4
代码:
#include <iostream>
#include <stdio.h>
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
int main(int argc, char** argv) {
int n;
scanf("%d",&n);
getchar();
while(n--) {
char a,b,c;
scanf("%c%c%c",&a,&b,&c);
getchar();
if(a<b){
if(b<c){
printf("%c %c %c\n",a,b,c);
}else{
if(a>c){
printf("%c %c %c\n",c,a,b);
}else{
printf("%c %c %c\n",a,c,b);
}
}
}else{
if(b>c){
printf("%c %c %c\n",c,b,a);
}else{
if(a>c){
printf("%c %c %c\n",b,c,a);
}else{
printf("%c %c %c\n",b,a,c);
}
}
}
}
return 0;
}
收获:
接受字符前记得将之前的回车清理。
scanf("%d",&n);
getchar();
while(n--) {
char a,b,c;
scanf("%c%c%c",&a,&b,&c);
getchar();