Java 输入3位数字并打印最高数字

Java 输入3位数字并打印最高数字,java,Java,如何确定3位数字中的最高数字 import java.util.Scanner; class Main{ public static void main(final String args[]) { final Scanner in = new Scanner(System.in); int a, b, c; final int num = in.nextInt(); a = num / 100; b = (num / 10) % 10;

如何确定3位数字中的最高数字

import java.util.Scanner;

class Main{

public static void main(final String args[]) {

    final Scanner in = new Scanner(System.in);

    int a, b, c;
    final int num = in.nextInt();

    a = num / 100;
    b = (num / 10) % 10;
    c = num % 10;

    if (a > b) {
      if (a > c) {
        System.out.println(a);
      } else {
        System.out.println(c);
      }
    }

  }
}
投入:173 预期产出:7

输入:109 预期产出:9


你认为在这里使用模数是个好主意:

int input=in.nextInt();
int num=Math.abs(num);
整数最高位数=-1;
while(num>0){
整数位数=num%10;
如果(数字>最高数字){
最高位数=位数;
}
num/=10;
}
System.out.println(“输入+”中的最高位数为:“+最高位数”);

上面的解决方案通过检查最后一个数字并跟踪看到的最高数字来迭代输入的数字。请注意,在循环的每次迭代中,在检查最后一个数字后,我们将输入除以10。

如果
a
,您将丢失条件。还需要添加以下内容:

public static void main(final String args[]) {

    final Scanner in = new Scanner(System.in);

    int a, b, c;
    System.out.println("Please enter 3 digit number. Ex : 197, 187, 981 etc.");
    final int num = in.nextInt();

    a = num / 100;
    b = (num / 10) % 10;
    c = num % 10;

    if (a > b) {
      if (a > c) {
        System.out.println(a);
      } else {
        System.out.println(c);
      }
    } else {
      if (b > c) {
        System.out.println(b);
      } else {
        System.out.println(c);
      }
    }

  }

您还可以将输入获取为字符串,然后将其更改为整数并检查每个值:

        Scanner input = new Scanner(System.in);
        
        String digits = input.next();
        input.close();
        
        int max = 0;
        for (int i = 0; i < digits.length(); i++) {
            if(Character.getNumericValue(digits.charAt(i)) > max) {
                max = Character.getNumericValue(digits.charAt(i));
            }
        }
        System.out.println(max);
扫描仪输入=新扫描仪(System.in);
字符串数字=输入。下一步();
input.close();
int max=0;
对于(int i=0;imax){
max=Character.getNumericValue(digits.charAt(i));
}
}
系统输出打印项次(最大值);

简单方法…

import java.util.Scanner;

class Main{
 public static void main(final String args[]) {

 final Scanner in = new Scanner(System.in);

 int a, b, c;
 System.out.print("Enter 3 digit number :");
 int num = in.nextInt();

 a = num / 100;
 b = (num / 10) % 10;
 c = num % 10;

 if (a > b && a > c) {
  System.out.print("Largest number is:"+a);
 } else if(b > c) {
  System.out.print("Largest number is:"+b);
  } else {
   System.out.print("Largest number is:"+c);
  }
 }
}

导入java.util.Scanner

班长{

公共静态void main(最终字符串参数[]){

}
}

没有
系统输出打印LN(b)是一面红旗。
final Scanner in = new Scanner(System.in);

int a, b, c;
final int num = in.nextInt();

a = num / 100;
b = (num / 10) % 10;
c = num % 10;

if (a > b) {
     if (a > c)
    System.out.println(a);
         }
           

 if(b > a){
    if(b > c)
    System.out.println(b);
         }


         if(c > a){
            if(c > b)
         System.out.println(b);
                  }