问题:在控制台输入3个整数,然后用if.else把这三个数按从小到大输出。求代码及解题思路。

解决方案 »

  1.   

    Scanner input=new Scanner(System.in);
    System.out.println("请输入3个数:");
    int a=input.nextInt();
    int b=input.nextInt();
    int c=input.nextInt();
    int t=0;
    //互换值后为b>a;不成立不互换
    if(a>b){
    t=a;
    a=b;
    b=t;
    }
    //互换值后为c>a;不成立不互换
    if(a>c){
    t=a;
    a=c;
    c=t;
    }
    //互换值后为c>b;不成立不互换
    if(b>c){
    t=b;
    b=c;
    c=t;
    }
    //所以是c>b>a
    System.out.println("从小到大输出为"+a+"<"+b+"<"+c);
      

  2.   

    import java.util.*;
    public class ThreeOP
    // 测试三元运算符的使用
    {
    int num1;
    int num2;
    int num3; // 构造方法
    public ThreeOP() {
    Scanner scanner = new Scanner(System.in);
    System.out.println("请输入第一个数num1的值");
    this.num1 = scanner.nextInt();
    System.out.println("请输入第二个数num2的值");
    this.num2 = scanner.nextInt();
    System.out.println("请输入第三个数num3的值");
    this.num3 = scanner.nextInt();
    } // 成员方法
    public void threeop(int num1, int num2, int num3) {
    int num;
    if (num1 > num2) {
    num = num1;
    System.out.println("输入的三个数最小数的值:" + num2);
    } else {
                num=num2;
                System.out.println("输入的三个数最小数的值:" + num1);
    }
    if(num>num3){
    System.out.println("输入的三个数中间数的值:" + num3);
    System.out.println("输入的三个数最大数的值:" + num);
    }else{
    System.out.println("输入的三个数中间数的值:" + num);
    System.out.println("输入的三个数最大数的值:" + num3);
    }
    } public static void main(String[] args) {
    ThreeOP three = new ThreeOP();
    three.threeop(three.num1, three.num2, three.num3);
    }
    }
      

  3.   

    可以参考一下,你也可以多定义两个变量把值取出来,再一起打印;
    这时我以前练的时候写的,我也刚学java,分享一下!!给点分哦!
      

  4.   

    使用交换值操作,a,b,c,temp
    if(a>b){
       temp = a;
       a=b;
       b=temp;
    }
    if(a>c){
       temp = a;
       a=c;
       c=temp;
    }
    if(b>c){
       temp = b;
       b=c;
       c=temp;
    }
      

  5.   


    Scanner input = new Scanner(System.in);
    System.out.println("请输入3个数:");
    int a = input.nextInt();
    int b = input.nextInt();
    int c = input.nextInt();
    // 互换值后为b>a;不成立不互换
    if (a > b) {
    a = a + b;
    b = a - b;
    a = a - b;
    }
    // 互换值后为c>a;不成立不互换
    if (a > c) {
    a = a + c;
    c = a - c;
    a = a - c;
    }
    // 互换值后为c>b;不成立不互换
    if (b > c) {
    b = b + c;
    c = b - c;
    b = b - c;
    }
    // 所以是c>b>a
    System.out.println("从小到大输出为" + a + "<" + b + "<" + c);