根据你的要求,我给出了修改后的Java代码,用于生成并打印英语序数词。以下是完整的修改后的代码:import java.util.Random;import java.util.Scanner;public class ArrayDemo7 { public static void main(String[] args) { int[] codes = new int[5]; Scanner sc = new Scanner(System.in); for (int i = 0; i < codes.length; i++) { System.out.print("Enter the " + getOrdinal(i+1) + " worker number: "); int code = sc.nextInt(); codes[i] = code; } Random r = new Random(); for (int i = 0; i < codes.length; i++) { int index = r.nextInt(codes.length); int temp = codes[index]; codes[index] = codes[i]; codes[i] = temp; } for (int i = 0; i < codes.length; i++) { System.out.println(codes[i]); } } public static String getOrdinal(int number) { if (number == 11 || number == 12 || number == 13) { return number + "th"; } else if (number % 10 == 1) { return number + "st"; } else if (number % 10 == 2) { return number + "nd"; } else if (number % 10 == 3) { return number + "rd"; } else { return number + "th"; } }}
这段代码会提示用户输入工人号码,并且使用英语序数词(1st、2nd、3rd等)进行提示。在getOrdinal()方法中,我们根据给定的数字判断并返回相应的英语序数词。在输入工人号码时,使用getOrdinal(i+1)来获取工人号码对应的序数词。
希望这个代码能满足你的需求。如果你有任何问题,请随时提问。
如果回答对你有帮助,请给我一个最佳答案!
|