游客 Signup | Login
中文 | En

3464 - 习题8-1 排序输出

从键盘上输入3个整数(以空格分隔),按照有小到大的顺序输出这三个数。

 

Input

以空格分隔的三个整数。

Output

以从小到大的顺序输出3个整数,3个数之间以空格分隔,行尾输出换行符。

(注意:最后一个数的后面没有空格)。

 

Examples

Input

1 3 2

Output

1 2 3

Solution C

#include<stdio.h>
int main()
{
	int a,b,c,temp;
	int *p1=&a,*p2=&b,*p3=&c;
	scanf("%d%d%d",p1,p2,p3);
	if(*p1>*p2){temp=*p1;*p1=*p2;*p2=temp;}
	if(*p1>*p3){temp=*p1;*p1=*p3;*p3=temp;}
	if(*p2>*p3){temp=*p2;*p2=*p3;*p3=temp;}
	printf("%d %d %d\n",*p1,*p2,*p3);
	return 0;
}

Solution C++

#include<cstdio>
#include<cstring>
#include<cstdlib>
using namespace std;
int cmp(const void *xx,const void *yy)
{
	int n1=*(int *)xx;
	int n2=*(int *)yy;
	if(n1<n2)return -1;
	if(n1>n2)return 1;
	return 0;
}
int main()
{
	int a[10];
	scanf("%d%d%d",&a[1],&a[2],&a[3]);
	qsort(a+1,3,sizeof(int),cmp);
	printf("%d %d %d",a[1],a[2],a[3]);
	return 0;
}
Time Limit 1 second
Memory Limit 12 MB
Discuss Stats
上一题 下一题