加载中...

浙江理工大学入队200题——19K

问题 K: 习题8-2 字符串排序输出

题目描述

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

输入

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

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

输出

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

样例输入 Copy

tianjin
beijing
chengdu

样例输出 Copy

beijing
chengdu
tianjin

题解

1.第一种方法sort不解释
详细可到我之前的博客> https://www.cnblogs.com/codeshany/p/zstu_200_17I.html
2.这里因为要求指针

代码(AC)

点击查看代码
#include<stdio.h>
#include<string.h>
int main()
{
	void compare(char *p1,char *p2,char *p3);
	char a[20]="";
	char b[20]="";
	char c[20]="";
	char *q1,*q2,*q3;
	gets(a),gets(b),gets(c);
	q1=a,q2=b,q3=c;
	compare(q1,q2,q3);
	return 0;
}
void compare(char *p1,char *p2,char *p3)
{
	char *t;
	if(strcmp(p1,p2)>0) 
	{
		t=p1;p1=p2;p2=t;
	}
	if(strcmp(p1,p3)>0)
	{
		t=p1;p1=p3;p3=t;
	}
	if(strcmp(p2,p3)>0)
	{
		t=p2;p2=p3;p3=t;
	}
		printf("%s\n%s\n%s\n",p1,p2,p3);
}
	
posted @ 2022-10-30 15:08  shany212  阅读(62)  评论(0编辑  收藏  举报