输入三个字符(可以重复)后,按各字符的ASCII码从小到大的顺序输出这三个字符。
输入
第一行输入一个数N,表示有N组测试数据。后面的N行输入多组数据,每组输入数据都是占一行,有三个字符组成,之间无空格。
输出
对于每组输入数据,输出一行,字符中间用一个空格分开。
int main(void)
{
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);
}
}
上图为正解
#include<stdio.h>
int main(void)
{
int n,x,y,z,t;
scanf("%d",&n);
while(n–)
{
scanf("%d",&x);
scanf("%d",&y);
scanf("%d",&z);
if(x>y)
{
x=t;
t=y;
y=x;
}
if(y>z)
{
y=t;
t=z;
z=y;
}
if(x>z)
{
x=t;
t=z;
z=x;
}
printf("%d%d%d",x,y,z);
}
}
为啥第二个不对
ASCII码排序
最新推荐文章于 2022-01-13 10:33:30 发布