0

坚持提示输入数字 1 到 10 - 结果应将 st、rd、th 和 nd 添加到数字中。编写一个程序,提示用户输入从 1 到 10 的任何整数,然后以带有后缀的序数形式显示该整数。

public class Ordinals {

    public static String Ordinals(int i) {

            System.out.println("Enter an integer between 0 to 10: ");
            Scanner input = new Scanner(System.in);


            int hundred = value % 100;
            int tens = value % 10;
            if (hundred - tens == 10) {
                return "th";
            }
            switch (tens) {
            case 1:
                return "st";
            case 2:
                return "nd";
            case 3:
                return "rd";
            default:
                return "th";

            }


        public static void main(String[] args) {
            Ordinals number = new Ordinals();
            for (int i = 1; i <= 10; i++) {
                String st = number.Ordinals(i);
                System.out.println(i + " = " + i + st);
            }
        }
    }
4

2 回答 2

1

value = input.nextInt()在创建扫描仪的行下添加。

于 2015-06-04T22:25:04.487 回答
1

在我看来,最好转到Scannermain:

public static void main(String[] args) {
    Ordinals number = new Ordinals();
    Scanner input = new Scanner(System.in);
    while(true){
        System.out.println("Enter an integer between 0 to 10: ");
        int i = input.nextInt();
        System.out.println(i+number.Ordinals(i));
    }
}

然后添加到序数:

int value = i;

方法将是独立的表单输入类型。

于 2015-06-04T22:30:17.583 回答