ASCII码排序
时间限制:
3000 ms | 内存限制:
65535 KB
难度:
2
-
描述
-
输入三个字符(可以重复)后,按各字符的ASCII码从小到大的顺序输出这三个字符。
-
输入
- 第一行输入一个数N,表示有N组测试数据。后面的N行输入多组数据,每组输入数据都是占一行,有三个字符组成,之间无空格。 输出
- 对于每组输入数据,输出一行,字符中间用一个空格分开。 样例输入
-
2 qwe asd
样例输出
-
e q w a d s
思路:
这道题其实挺简单的,就是简单的排序,只不过要把字符串变成字母。然后进行char变int 然后排序就行。
代码:
import java.util.Arrays;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int a = sc.nextInt();
char[] b = new char[3];
int[] c = new int[3];
String[] s = new String[a];
for(int i=0;i<a;i++){
s[i] = sc.next();
}
for(int i=0;i<a;i++){
for(int j=0;j<3;j++){
b[j] = s[i].charAt(j);//分开字符串中的字母
c[j] = (int)(b[j]);//根据ASill值变成整型
}
Arrays.sort(c);//从小到大排序
System.out.println((char)(c[0])+" "+(char)(c[1])+" "+(char)(c[2]));//依次输出
}
}
}