输入三个整数x、y、z,请把这三个数由小到大输出

题目:输入三个整数x,y,z,请把这三个数由小到大输出。


程序分析:我们想办法把最小的数放到x上,先将xy进行比较,如果x> y则将xy的值进行交换,然后再用xz进行比较,如果x> z则将xz的值进行交换,这样能使x最小。

 

 

 1 package com.li.FiftyAlgorthm;
 2 
 3 import java.util.Scanner;
 4 
 5 /**
 6  * 题目:输入三个整数x,y,z,请把这三个数由小到大输出。 程序分析:我们想办法把最小的数放到x上,先将x与y进行比较,如果x>y
 7  * 则将x与y的值进行交换,然后再用x与z进行比较,如果x> z则将x与z的值进行交换,这样能使x最小。
 8  * @author yejin
 9  */
10 public class NumberCompare {
11     public static void main(String[] args) {
12         NumberCompare nc = new NumberCompare();
13         int a, b, c;
14 
15         System.out.println("Input 3 numbers:");
16         a = nc.input();
17         b = nc.input();
18         c = nc.input();
19         //
20         // fnc.compare(a, b);//方法调用不能通过改变形参的值来改变实参的值
21         // fnc.compare(b, c);// 这种做法是错的
22         // fnc.compare(a, c);
23         // System.out.println("result:" + a +" " + b + " " + c);// 没有改变
24 
25         if (a > b) {
26             int t = a;
27             a = b;
28             b = t;
29         }
30 
31         if (a > c) {
32             int t = a;
33             a = c;
34             c = t;
35         }
36 
37         if (b > c) {
38             int t = b;
39             b = c;
40             c = t;
41         }
42         System.out.println(a + " " + b + " " + c);
43     }
44 
45     public int input() {
46         int value = 0;
47         Scanner s = new Scanner(System.in);
48         value = s.nextInt();
49         return value;
50     }
51 
52     public void compare(int x, int y) {// 此方法没用
53         if (x > y) {
54             int t = x;
55             x = y;
56             y = t;
57         }
58     }
59 }

 

转载于:https://www.cnblogs.com/justdoitba/p/7143114.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值