输入三个整数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 }

 

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/11335.html

(0)
上一篇 2021年7月19日
下一篇 2021年7月19日

相关推荐

发表回复

登录后才能评论