游客 Signup | Login
中文 | En

3465 - 习题8-2 字符串排序输出

输入3个字符串,按有小到大的顺序输出。

Input

分三行进行输入,每行一个字符串。

(以回车结束每一行的输入)

Output

输出排序后的三个字符串,每个字符串占一行。

Examples

Input

tianjin
beijing
chengdu

Output

beijing
chengdu
tianjin

Solution C

#include"stdio.h"

#include"string.h"
int main()
{void swap(char *,char *);
char str1[20],str2[20],str3[20];
gets(str1);
gets(str2);
gets(str3);
if(strcmp(str1,str2)>0)swap(str1,str2);
if(strcmp(str1,str3)>0)swap(str1,str3);
if(strcmp(str2,str3)>0)swap(str2,str3);
printf("%s\n%s\n%s\n",str1,str2,str3);

return 0;
}

void swap(char *p1,char *p2)
{
	char p[20];
	strcpy(p,p1);strcpy(p1,p2);strcpy(p2,p);
}

Solution C++

#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>
#include <string>

using namespace std;

int cmp(string a,string b)
{
	return a<b;
}

int main()
{
	int i;
	string str[128];
	char tmp[128];
	for (i = 0; i < 3; i++)
	{
		cin.get(tmp,128);
		getchar();
		str[i] = tmp;
	}

	sort(str,str+3,cmp);

	for (i = 0; i < 3; i++)
		cout << str[i] << '\n';

	return 0;
}
Time Limit 1 second
Memory Limit 12 MB
Discuss Stats
上一题 下一题