3255 - 例题4-3 比较交换3个实数值,并按序输出

通过次数

0

提交次数

0

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

从键盘输入3个实数a, b, c,通过比较交换,将最小值存储在变量a中,最大值存储在变量c中,中间值存储在变量b中,并按照从小到大的顺序输出这三个数a, b, c。

末尾输出换行。

题目输入

输入以空格分隔的三个实数

题目输出

按照从小到大的顺序输出这三个实数,中间以空格分隔,最小值在前,最大值在后。小数点后保留2位小数。

注意末尾的换行。

输入/输出样例

输入格式

3 7 1

输出格式

1.00 3.00 7.00

C语言解答

#include<stdio.h>
int main()
{
	double a,b,c,m;
	scanf("%lf%lf%lf",&a,&b,&c);
	if(a>b){m=a;a=b;b=m;}
	if(a>c){m=a;a=c;c=m;}
	if(b>c){m=b;b=c;c=m;}
	printf("%.2lf %.2lf %.2lf\n",a,b,c);
	getchar();
	getchar();
	return 0;
}

C++解答

#include <cstdio>
int main (void)
{
	double a,b,c;
	scanf("%lf%lf%lf",&a,&b,&c);
	if(a<=b&&b<=c)
		printf("%.2f %.2f %.2f\n",a,b,c);
	else if(b<=a&&a<=c)
		printf("%.2f %.2f %.2f\n",b,a,c);
	else if(a<=c&&c<=b)
		printf("%.2f %.2f %.2f\n",a,c,b);
    else if(c<=a&&a<=b)
		printf("%.2f %.2f %.2f\n",c,a,b);
	else if(b<=c&&c<=a)
		printf("%.2f %.2f %.2f\n",b,c,a);
	else printf("%.2f %.2f %.2f\n",c,b,a);
	return 0;
}

Python解答

# coding=utf-8
s = input(). split()
a, b, c = float(s[0]), float(s[1]), float(s[2])
if a > b :
    a, b = b, a
if a > c :
    a, c = c, a
if b > c :
    b, c = c, b
print(format(a, ".2f"), format(b, ".2f"), format(c, ".2f"))