Problem A ASCII码排序

来源:互联网 发布:软件测试入门书籍 编辑:程序博客网 时间:2024/06/10 20:24

ASCII码排序

时间限制:3000 ms | 内存限制:65535 KB
难度:2
描述
输入三个字符(可以重复)后,按各字符的ASCII码从小到大的顺序输出这三个字符。
输入
第一行输入一个数N,表示有N组测试数据。后面的N行输入多组数据,每组输入数据都是占一行,有三个字符组成,之间无空格。
输出
对于每组输入数据,输出一行,字符中间用一个空格分开。
样例输入
2qweasd
样例输出
e q wa d s
错误原因:编译错误,getchar()的头文件是<stdio.h>,有时候没有这个头文件编译器也可以通过,但是提交的话就会PE!!!!!切记!!!
代码:
#include<iostream>#include<stdio.h>#include<stdlib.h>#include<algorithm>using namespace std;int main(){char a[4];int n;cin >> n;getchar();while(n--){for(int i=0;i!=3;i++)   cin>>a[i];        sort(a,a+3);        cout<< a[0]<<" "<<a[1]<<" "<<a[2]<<endl;}return 0;}
优秀代码:
 #include "stdio.h"main(){char a,b,c,d;int i;scanf("%d",&i);getchar();while(i--){scanf("%c%c%c",&a,&b,&c);getchar();               //吸收在循环体内后面输出的换行符if (a>b) {d=a;a=b;b=d;}if (a>c) {d=a;a=c;c=d;}if (b>c) {d=b;b=c;c=d;}printf("%c %c %c\n",a,b,c);}}        



0 0
原创粉丝点击