gpt4 book ai didi

java - 按升序显示三个非负整数

转载 作者:行者123 更新时间:2023-12-02 08:23:52 36 4
gpt4 key购买 nike

提示用户输入三个非负整数。按升序显示整数。

import java.util.Scanner;

{
int number1,number2,number3;
Scanner keyboard = new Scanner (System.in);
number1=keyboard.nextInt();
number2=keyboard.nextInt();
number3=keyboard.nextInt();

if(number1<number2&&number1<number3&&number2<number3)
{
System.out.println(number1);
System.out.println(number2);
System.out.println(number3);
}

else if(number1>number2&&number1>number3&&number2>number3)
{
System.out.println(number3);
System.out.println(number2);
System.out.println(number1);
}

else if(number1<number2&&number1<number3&&number2>number3)
{
System.out.println(number1);
System.out.println(number3);
System.out.println(number2);
}

else if(number2>number1&&number2>number3&&number1>number3)
{
System.out.println(number3);
System.out.println(number1);
System.out.println(number2);
}

else if (number3>number1&&number3>2&&number1>number2)
{
System.out.println(number2);
System.out.println(number1);
System.out.println(number3);
}

输出:

213

123

附注我不允许使用 while 语句、swing 和 for。我是java新手,所以这是我能想到的。有更快的方法吗?谢谢。

最佳答案

这是冒泡排序的一种实现。它并不比您的实现好多少,但可以让您了解将来如何使用循环。发生的情况是,在前 2 个区 block 之后,最大值将位于第三位。然后下一个 block 修复剩余的两个数字。您可以将 if 子句移动到一个单独的函数中,该函数接受要比较和切换的两个数字作为参数。

public static void main(String[] args) {


int number1,number2,number3;
Scanner keyboard = new Scanner (System.in);
number1=keyboard.nextInt();
number2=keyboard.nextInt();
number3=keyboard.nextInt();

int temp;

if (number2 < number1){
temp = number2;
number2 = number1;
number1 = temp;
}

if (number3 < number2){
temp = number3;
number3 = number2;
number2 = temp;
}

if (number2 < number1){
temp = number2;
number2 = number1;
number1 = temp;
}
System.out.println(number1);
System.out.println(number2);
System.out.println(number3);

}

关于java - 按升序显示三个非负整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4918499/

36 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com