我想让用户输入列长度。让我们说“4”。然后它应该打印如下:
1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16
在 4 x 4 的正方形中。
我不希望我的代码接近我正在寻找的解决方案。这只是一个简单的打印输出行。但这需要一些必要的修改。
我该如何处理这个问题?
package MagicMatrix;
import java.util.Arrays;
import java.util.Scanner;
public class Matrix
{
Scanner scanner = new Scanner(System.in);
public static void main(String[] args)
{
new Matrix();
}
public Matrix()
{
System.out.println("Give column length of matrix\n");
int var00 = 1;
int columnlength = scanner.nextInt();
int [][] matrix = new int [columnlength][columnlength];
for (int i=0; i < columnlength; i++)
{
for (int j=0; j < columnlength; j++ )
{
matrix[i][j] = var00;
var00++;
}
}
for (int i=0; i < colomnlength; i++)
{
for (int j=0; j < colomnlength; j++ )
{
System.out.print(matrix[i][j]); // The big question!!!!
}
}
}
}
最佳答案
与您在问题中所说的相反,您实际上非常接近解决方案。您只需替换 var1
(我不知道那是从哪里来的)和你的 var00
在内循环(使用 j
迭代的循环)之后添加 System.out.println()
一行后转到下一行。理论上这应该可行。
for (int i=0; i < columnlength; i++)
{
for (int j=0; j < columnlength; j++ )
{
matrix[i][j] = var00;
var00++;
}
}
for (int i=0; i < columnlength; i++)
{
for (int j=0; j < columnlength; j++ )
{
System.out.print(matrix[i][j] + " ");
}
System.out.println();
}
编辑:我注意到你调用过一次 columnlength
一次colomnlength
你应该解决这个问题。另外在 matrix[i][j]
之后添加一个空格通过这样做+ " "
所以数字之间有一点空格
关于java - 在同一行中打印变量编号,以转到这些变量编号之后的下一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58935568/