1110 - C语言2.7

通过次数

0

提交次数

0

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

输入3个整数a、b、c,按从小到大的顺序输出。

题目输入

输入包含一行,包含三个用空格隔开的整数。

题目输出

请按从小到大的顺序输出读入的三个数。请注意行尾输出换行。

输入/输出样例

输入格式

30 15 20

输出格式

15 20 30

C语言解答

#include<stdio.h>
int main(){	int i,j,temp;
	int a[3];
	scanf("%d %d %d",&a[0],&a[1],&a[2]);
	for (i=0;i<2;i++)
		for (j=i+1;j<3;j++)
			if (a[i]>a[j])
			{
				temp=a[i];
				a[i]=a[j];
				a[j]=temp;
			}
    for (i=0;i<2;i++)
    printf("%d ",a[i]);
    printf("%d",a[i]);
           
	printf("\n");
	return 0;
}

C++解答

#include <stdio.h>
int main() {
	int a, b, c, t;
	scanf("%d %d %d", &a, &b, &c);
	/* 首先比较a和b的关系,通过交换位置使a <= b */
	if (a > b) {
		t = a;
		a = b;
		b = t;
	}
	/* 比较a和c的关系,通过交换位置使a <= c,从而a是最小值 */
	if (a > c) {
		t = a;
		a = c;
		c = t;
	}
	/* 比较b和c的关系,通过交换位置使b <= c,最终使a <= b <= c*/
	if (b > c) {
		t = b;
		b = c;
		c = t;
	}
	printf("%d %d %d\n", a, b, c);
	return 0;
}

Java解答


import java.util.Scanner;

public class Main{

	public static void main(String[] args) {
	Scanner s=new Scanner(System.in);
	int a=s.nextInt();
	int b=s.nextInt();
	int c=s.nextInt();
	int t;
    if (a > b) {
        t = a;
        a = b;
        b = t;
}
if (a > c) {
        t = a;
        a = c;
        c = t;
}
if (b > c) {
        t = b;
        b = c;
        c = t;
}		
System.out.print(a+" ");
System.out.print(b+" ");
System.out.print(c);
	}

}

Python解答

print ' '.join(str(x) for x in sorted(int(x) for x in raw_input().split()))