[TOC]
南阳OJ-No.4
时间限制3000ms,内存限制65535kb
描述
输入三个字符(可以重复)后,按各字符的ASCII码从小到大的顺序输出这三个字符。
输入
第一行输入一个数N,表示有N组测试数据。后面的N行输入多组数据,每组输入数据都是占一行,有三个字符组成,之间无空格。
输出
对于每组输入数据,输出一行,字符中间用一个空格分开。
样例输入
2
qwe
asd
样例输出
e q w
a d s
时间200,内存373
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44/*2017.1.31
* jdk1.7
* ASCII码排序
* */
import java.util.*;
public class Main { //程序入口
public static void main(String[] args) throws Exception { //应程序要求,OJ规范,抛出异常
Scanner cin = new Scanner(System.in); //采用Scanner读取控制台
int a = cin.nextInt(); //记录数据组数
for (int n=a; n>=1; n--) { //每组
char m, v, p; //记录三个char字符
String s1 = cin.next(); //Scanner读入的是一个String
//读取字符串中的字符
m = s1.charAt(0);
v = s1.charAt(1);
p = s1.charAt(2);
sort1(m, v, p); //方法调用
}
}
//方法:输入三个字符(可以重复)后,按各字符的ASCII码从小到大的顺序输出这三个字符。
public static void sort1(char a, char b, char c) {
char t1 = a; //分别定义三个char变量用于记录形参传来的三个值
char t2 = b;
char t3 = c;
char t; //临时变量
//三个数字,按增序输出
if (t1 > t2) { //如果第一个数大于第二个数,交换第一个数和第二个数
t = t1; //交换t1和t2
t1 = t2;
t2 = t;
}
//此时第一个数一定比第二个数小
if(t3 < t1)//若第三个数比t1小
System.out.println(t3 + " " + t1 + " " + t2 + "\n");
else if(t3 > t2) //若第三个数比t2大
System.out.println(t1 + " " + t2 + " " + t3 + "\n");
else //第三个数介于t1和t2之间
System.out.println(t1 + " " + t3 + " " + t2 + "\n");
}
}
时间4,内存240
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41#include <iostream>
using namespace std;
void sort1(char a, char b, char c) //输入三个字符,按字符的ASCII码从小到大的顺序输出这三个字符
{
char t1 = a; //分别定义三个char变量用于记录形参传来的三个值
char t2 = b;
char t3 = c;
char t; //临时变量
//三个数字,按增序输出
if (t1 > t2) //如果第一个数大于第二个数,交换第一个数和第二个数
{
t = t1; //交换t1和t2
t1 = t2;
t2 = t;
}
//此时第一个数一定比第二个数小
if(t3 < t1) //若第三个数比t1小
cout << t3 << " " << t1 << " " << t2 << endl;
else if(t3 > t2) //若第三个数比t2大
cout << t1 << " " << t2 << " " << t3 << endl;
else //第三个数介于t1和t2之间
cout << t1 << " " << t3 << " " << t2 << endl;
}
int main() //程序入口
{
int a; //记录循环次数
cin >> a;
for (int n=a; n>=1; n--)
{
char a,b,c;
cin >> a >> b >> c;
sort1(a, b, c);
}
return 0;
}