ASCII码排序
时间限制:3000 ms | 内存限制:65535 KB
难度:2
-
描述
- 输入三个字符(可以重复)后,按各字符的ASCII码从小到大的顺序输出这三个字符。
-
输入
- 第一行输入一个数N,表示有N组测试数据。后面的N行输入多组数据,每组输入数据都是占一行,有三个字符组成,之间无空格。 输出
- 对于每组输入数据,输出一行,字符中间用一个空格分开。 样例输入
-
3 qwe asd zxc
样例输出 -
e q w a d s c x z
#include<stdio.h> int main() { int i,s; scanf("%d",&s); //char a[4]; char a[4]; getchar(); while(s--) { //for(i=0;i<3;i++)//此for语句为什么不对呢?for语句改为scanf("%s",a);就对了??是不是和转义字符有关? //{ //scanf("%c",&a[i]); //} gets(a);//此语句在这里当输入s,回车时,会出现??,因为gets把回车符赋值给了a[0],而a[1],a[2]就是未知数了。 //scanf("%s",a); char max=a[0]; for(i=0;i<3;i++) { if(a[i]>max) max=a[i]; } char min=max; for(i=0;i<3;i++) { if(a[i]<min) min=a[i]; } char mid; for(i=0;i<3;i++) { if(a[i]!=max&&a[i]!=min) mid=a[i]; } //mid=a[0]+a[1]+a[2]-max-min; printf("%c %c %c\n",min,mid,max); } return 0; }
本文详细介绍了如何通过输入三个字符并按照ASCII码从小到大的顺序进行排序,并提供了具体的代码实现。通过实例演示,帮助读者理解ASCII码排序的过程及其实现细节。

被折叠的 条评论
为什么被折叠?



