输出应该看起来像这样:
1 1 2
3 5 8
13 21 34
但我目前的输出是:1 1 2 3 5 8 13 21 34
我应该如何处理格式设置?
rows = s.nextInt();
columns = s.nextInt();
int firstNumber = 0;
int secondNumber = 1;
for (int i = 0; i < rows; i++) {
for(int j = 0; j < columns; j++) {
int f = firstNumber + secondNumber;
firstNumber = secondNumber;
secondNumber = f;
System.out.printf(f + " ");
}
}
只需在外部循环中调用println()
(仅适用于行(。
rows = s.nextInt();
columns = s.nextInt();
int firstNumber = 0;
int secondNumber = 1;
for (int i = 0; i < rows; i++) {
for(int j = 0; j < columns; j++) {
int f = firstNumber + secondNumber;
firstNumber = secondNumber;
secondNumber = f;
System.out.printf(f + " ");
}
System.out.println();
}
这是一个示例,显示了如何格式化给定的数据集(如果它在int
数组中(,每行 3 个值。额外的部分是,随着index
的变化,我正在检查它是否可以被 3 整除——如果你想每行打印 4 个值,你可以把它改成index % 4
(。如果index
能被 3 整除,则它println()
包含换行符。否则,它只会print()
numbers[index]
的任何数字。
int[] numbers = new int[]{1, 1, 2, 3, 5, 8, 13, 21, 34};
for (int index = 0; index < numbers.length; index++) {
if (index % 3 == 0) {
System.out.println();
}
System.out.print(numbers[index] + " ");
}
这是输出:
1 1 2
3 5 8
13 21 34
试试一次
public class Main
{
public static void main(String[] args) {
int rows = s.nextInt();
int columns = s.nextInt();
int firstNumber = 0;
int secondNumber = 1;
for (int i = 0; i < rows; i++) {
for(int j = 0; j < columns; j++) {
int f = firstNumber + secondNumber;
firstNumber = secondNumber;
secondNumber = f;
System.out.printf(f + " ");
}
System.out.printf(" n");
}
}
}