3916 - 最难的题
时间限制 : 1 秒
内存限制 : 128 MB
输入三个字符(可以重复)后,按照字母的ASCII码从小到大输出这三个字符。
题目输入
第一行输入一个数字N,代表后面的N行输入测试数据,每行测试数据都是占一行,由三个字符组成,中间无空格。
题目输出
输出排序后的结果,每个字母之间有一个空格。
输入/输出样例
输入格式
3 qwe asd zxc
输出格式
e q w a d s c x z
C语言解答
#include<stdio.h> int main() { int n; char a[5],t; while(~scanf("%d",&n)) { getchar(); while(n--) { gets(a); for(int i=0;i<2;i++) for(int j=0;j<2-i;j++) if(a[j]>a[j+1]) { t=a[j]; a[j]=a[j+1]; a[j+1]=t; } for(int i=0;i<2;i++) printf("%c ",a[i]); printf("%c\n",a[2]); } } return 0; }
C++解答
#include <stdio.h> int main() { char s[5]; int n; while(~scanf("%d",&n)) { while(n--) { scanf("%s",s); for(int i = 0;i < 2;++i) for(int j = 0;j < 2 - i;++j) if(s[j] > s[j + 1]) { char t = s[j]; s[j] = s[j + 1]; s[j + 1] = t; } printf("%c %c %c\n",s[0],s[1],s[2]); } } return 0; }