【发布时间】:2016-04-03 21:31:23
【问题描述】:
我必须编写一个程序,在其中生成 200 个介于 1 和 100 之间的随机数。
// Create an array to generate 200 numbers
int Numbers [] = new int [200];
// Create an array to split the numbers up into 5 categories
int Count [] = new int [5];
// Start a new loop
for (int i = 0; i < Numbers.length; i++) {
// Generate numbers between 1 and 100
Numbers [i] = (int) (Math.random () * 100) + 1;
}
// Sort the array from least to greatest
Arrays.sort(Numbers);
这就是我遇到的问题的开始(我相信)。
每 20 行,程序应显示一个新行,然后继续打印其余数字。
我的问题是,似乎并非所有数字都在打印...在生成的 200 个数字中,我总共只打印了 190 个数字。
// Start a new loop
for (int i = 0; i < Numbers.length; i++) {
if (i % 21 != 0) {
System.out.print(Numbers [i] + " ");
}
else {
System.out.print(Numbers [i] + "\n");
}
}
如果有人能帮我解决这个问题,我将不胜感激。
【问题讨论】:
-
如果必须每 20 个数字打印一个新行,为什么要使用 i % 21 而不是 i % 20?另外,请尊重 Java 命名约定。变量以小写字母开头:
numbers,而不是Numbers。 -
另外,不要写
Numbers [i]和Math.random ()。删除代码中这些左括号和左括号之前的空格,它只会妨碍可读性。