首页 > 编程知识 正文

Java 输入三个整数 从小到大排列

时间:2023-05-03 14:53:54 阅读:185532 作者:2632

今天突然一想控制台输入三个数,如何将这三个数从小到大排序
经过短暂的思考,直接上代码:

public class Test04 { public static void main(String[] args) { demo01(); }/*7.题目:输入三个整数x,y,z,请把这三个数由小到大输出。*/ public static void demo01(){ System.out.println("欢迎来到排序小游戏!"); Scanner scanner = new Scanner(System.in); System.out.print("请输入第一个数x:"); int x = scanner.nextInt(); System.out.print("请输入第二个数y:"); int y=scanner.nextInt(); System.out.print("请输入第三个数z:"); int z=scanner.nextInt(); if(x>y) { if(x>z){ if(y>z){ System.out.println(z+"<"+y+"<"+x); return; }else{ System.out.println(y+"<"+z+"<"+x); return; } }else{ System.out.println(y+"<"+x+"<"+z); return; } } if(x>z){ if(z>y){ System.out.println(y+"<"+z+"<"+x); return; }else{ if(x>y){ System.out.println(z+"<"+y+"<"+x); return; }else{ System.out.println(z+"<"+x+"<"+y); return; } } } if(y>z){ if(z>x){ System.out.println(x+"<"+z+"<"+y); return; }else{ if(x>y){ System.out.println(z+"<"+y+"<"+x); return; }else { System.out.println(z+"<"+x+"<"+y); return; } } } } }

接下来我们看看运行结果:

没有问题!Nice!
但是感觉代码有点繁琐,经过一段时间后想出来另外一种方法
--------------------------------------------------------------------------------------------------------
方法二

public class Test04 { public static void main(String[] args) { demo01(); }public static void demo01(){ System.out.println("欢迎来到排序小游戏2.0!"); Scanner scanner = new Scanner(System.in); System.out.print("请输入第一个数x:"); int x = scanner.nextInt(); System.out.print("请输入第二个数y:"); int y=scanner.nextInt(); System.out.print("请输入第三个数z:"); int z=scanner.nextInt(); if(x>y){ if(y>z){ System.out.println(z+"<"+y+"<"+x); }else if(x>z){ System.out.println(y+"<"+z+"<"+x); }else{ System.out.println(y+"<"+x+"<"+z); } }else{ if(z<x){ System.out.println(z+"<"+x+"<"+y); }else if(y>z){ System.out.println(x+"<"+z+"<"+y); }else{ System.out.println(x+"<"+y+"<"+z); } } } }

结果:

代码比以前少了一半!起飞!

----------------------------------------------------------------------------------------------------------

方法三: 我giao,后来经过思考又发现了一个比较简单的写法,直接上代码:

/*7.题目:输入三个整数x,y,z,请把这三个数由小到大输出。*/ public static void demo07(){ System.out.println("欢迎来到排序小游戏!"); Scanner scanner = new Scanner(System.in); System.out.print("请输入第一个数x:"); int x = scanner.nextInt(); System.out.print("请输入第二个数y:"); int y=scanner.nextInt(); System.out.print("请输入第三个数z:"); int z=scanner.nextInt(); /*获取最大值*/ int max=(x>y)? x:y; max=(max>z)? max:z; /*获取最小值*/ int min=(x<y)? x:y; min=(min<z)? min:z; /*获取中间值*/ int mid=x+z+y-max-min; System.out.println(min+"<"+mid+"<"+max); }

代码量又少一半,飞起!

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。