[置顶] 开开心心学算法--ASCII码排序

描述
输入三个字符(可以重复)后,按各字符的ASCII码从小到大的顺序输出这三个字符。
输入
第一行输入一个数N,表示有N组测试数据。后面的N行输入多组数据,每组输入数据都是占一行,有三个字符组成,之间无空格。
输出
对于每组输入数据,输出一行,字符中间用一个空格分开。
样例输入
3
qwe
asd
zxc
样例输出
e q w
a d s
c x z

既然要开开心心学,就要从最基础的开始,哈哈。这道题不难,主要考输入输出和字符ascii码值的大小比较。

下面是我的解:

#include <stdio.h>
#include <string.h>

int main()
{
	char source[3],tmp;
	int count,i=0;

	scanf("%d",&count);
	while(count--)
	{
		scanf("%s",source);
		if(strlen(source) > 3 )
		return 0;
		if(source[0]>source[1])
		{
			tmp=source[0];
			source[0]=source[1];
			source[1]=tmp;
		}
		if(source[0]>source[2])
		{
			tmp=source[0];
			source[0]=source[2];
			source[2]=tmp;
		}
		if(source[1]>source[2])
		{
			tmp=source[1];
			source[1]=source[2];
			source[2]=tmp;
		}
		for(i=0;i<3;i++)
		printf("%c ",source[i]);
		printf("\n");
	}
	return 1;
}

在线提交运行时间0,内存228。


你可能感兴趣的:(c,算法,测试)