我必须编写一个程序,在其中生成 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");
}
}
如果有人能帮我解决这个问题,我将不胜感激。
最佳答案
你的情况应该是这样的
if (i % 20 != 0 || i == 0)
如果 i % 20 == 0
你应该换行但不是第一种情况 (0 % 20 == 0
)
简化
for (int i = 0; i < Numbers.length; i++) {
System.out.print(Numbers[i] + (i%20 != 0 || i == 0 ? " " : "\n"));
}
关于java - 每 20 次在新行中打印数组的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36391452/