HDU-2000——ASCII码排序

ASCII码排序

输入三个字符后,按各字符的ASCII码从小到大的顺序输出这三个字符。

Input

输入数据有多组,每组占一行,有三个字符组成,之间无空格。

Output

对于每组输入数据,输出一行,字符中间用一个空格分开。

Sample Input

qwe
asd
zxc

程序分析: 本题可以用冒泡算法,但这个题目中,一组数组仅有三个,故采用更简便的两两对比的方法来排顺序。本题中注意需要用getchar()来接收我们用scanf输入后多出的‘\n’以免影响到下一次输入。

#include<stdio.h>

int main()
{
	char a,b,c,temp;
	while(scanf("%c%c%c",&a,&b,&c)!=EOF)
	{
		getchar();
		if(a>b)
		{
			temp=a;
			a=b;
			b=temp;
		}
		if(a>c)
		{
			temp=a;
			a=c;
			c=temp;
		} 
		if(b>c)
		{
			temp=b;
			b=c;
			c=temp;
		}
		printf("%c %c %c\n",a,b,c);
	}
	return 0;
} 

猜你喜欢

转载自blog.csdn.net/weixin_43887417/article/details/84870500