1448 - C语言-字符排序

通过次数

0

提交次数

0

时间限制 : 1 秒 内存限制 : 128 MB

输入三个字符串,按由小到大的顺序输出

题目输入

3行字符串

题目输出

按照从小到大输出成3行

输入/输出样例

输入格式

cde
afg
abc

输出格式

abc
afg
cde

C语言解答

#include<stdio.h>
#include<string.h>
int main()
{
	char a[1000],b[1000],c[1000];
	scanf("%s %s %s",&a,&b,&c);
	if(strcmp(a,b)<0)
	{
		if(strcmp(b,c)<0)
	{
		printf("%s\n%s\n%s\n",a,b,c);
	}
	if(strcmp(b,c)>0)
	{
		if(strcmp(a,c)<0)
			printf("%s\n%s\n%s\n",a,c,b);
		if(strcmp(a,c)>0)
			printf("%s\n%s\n%s\n",c,a,b);
	}
	}
	if(strcmp(a,b)>0)
	{
		if(strcmp(b,c)<0)
		{
			if(strcmp(a,c)<0)
				printf("%s\n%s\n%s\n",b,a,c);
			if(strcmp(a,c)>0)
				printf("%s\n%s\n%s\n",b,c,a);
		}
		if(strcmp(b,c)>0)
			printf("%s\n%s\n%s\n",c,b,a);
	}
	return 0;
}

C++解答

#include "stdio.h"
#include "string.h"
int main(int argc, char* argv[])
{
	char a[100],b[100],c[100],tem[100];
	while(~scanf("%s%s%s",a,b,c))
	{
	  if(strcmp(a,b)>0)
	  {
	    strcpy(tem,a);
		strcpy(a,b);
	    strcpy(b,tem);
	  }
	 if(strcmp(a,c)>0)
	  {
	    strcpy(tem,a);
		strcpy(a,c);
	    strcpy(c,tem);
	  }
	  if(strcmp(b,c)>0)
	  {
	    strcpy(tem,b);
		strcpy(b,c);
	    strcpy(c,tem);
	  }
	  printf("%s\n%s\n%s\n",a,b,c);
	}
	return 0;
}