写一个Java程序显示一个三位数的百位、十位和个位的值

新手上路,请多包涵

我是 java 的菜鸟,我需要建议来修复此代码,我需要编写一个 Java 程序来显示三位数的百位、十位和个位的值。这是我到目前为止所拥有的,关于如何让它工作的任何想法?我没有收到任何错误,但我的号码甚至没有正确输出到控制台。就像我输入 123 作为我的 3 位数字一样,所有内容都打印为空白。例如:

输入3位数字:123 百位数字: 十位数字: 个位数字: 错误!号码超过 3 位数。错误!号码少于 3 位。

例如,它没有检测到我输入的“123”或我输入的任何其他内容。

     import java.util.Scanner;
        public class ValueOfDigits {
            public static void main(String[] args) {

                //Create new scanner
                Scanner input = new Scanner(System.in);

                //Values of each digit
                int hundreds = 0;
                int tens = 0;
                int ones = 0;

                //Prompt user to input 3 digit number
                System.out.print("Enter a 3 digit number: ");
                int number = input.nextInt();

                //Displays hundreds place digit
                hundreds = number / 100;
                System.out.printf("Hundreds place digit: " , hundreds);

                //Displays tens digit
                tens = (number - hundreds) / 10;
                System.out.printf("\nTens place digit: " , tens);

                //Display ones digit
                ones = (number - tens - hundreds);
                System.out.printf("\nOnes place digit: " , ones);

                //Error if number is less or more then three digits
                if (number > 999);
                System.out.println("\nError! Number more then 3 digits.");
                if (number < 100);
                System.out.println("Error! Number less then 3 digits.");
}

}

原文由 Wilyum 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 604
2 个回答

我们可以使用如下所示的简单代码在 Java 中获取个、百或任何其他位值:

 int n=356;
int one=(n/1)%10;
int tens= (n/10)%10;
int hundred = (n/100)%10;

原文由 Pooja 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题