最近做了几个ACM题,在这里做个记录
ASCII码排序
时间限制:3000 ms | 内存限制:65535 KB
难度:2
描述
输入三个字符(可以重复)后,按各字符的ASCII码从小到大的顺序输出这三个字符。
输入
第一行输入一个数N,表示有N组测试数据。后面的N行输入多组数据,每组输入数据都是占一行,有三个字符组成,之间无空格。
输出
对于每组输入数据,输出一行,字符中间用一个空格分开。
样例输入
2
qwe
asd
样例输出
e q w
a d s
下面是我的写法
import java.util.Scanner;
//ASCII码排序
public class Main{
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
String str;
char[] ch = new char[3];
char temp;
while(scan.hasNext()){
str = scan.next();
for(int i=0;i<3;i++)
ch[i] = str.charAt(i);
for(int j=0;j<3;j++){
for(int i=0;i<2;i++)
if(ch[i]>ch[i+1]){
temp = ch[i];
ch[i] = ch[i+1];
ch[i+1] = temp;
}
}
for(int i=0;i<2;i++)
System.out.print(ch[i]+" ");
System.out.println(ch[2]);
}
}
}