【发布时间】:2018-10-10 14:23:20
【问题描述】:
import java.util.Scanner;
class Test1 {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int n = scan.nextInt();
int[][] num = new int[n][n];
for (int i = 0; i < n; i++)
for (int j = 0; j < 0; j++)
if (i == j)
num[i][j] = 1;
else
num[i][j] = 0;
for (int[] a : num) {
for (int b : a)
System.out.print(b + " ");
System.out.println();
}
}
}
我想做 1 0 0 0 1 0 0 0 1 但我的回答就像 0 0 0 0 0 0 0 0 0
【问题讨论】:
-
for (int j = 0; j < 0; j++)- j -
对您的代码的注释:即使在可能的情况下,您也不应该省略围绕
if、else、for、...的括号,这会在您编辑/时引入讨厌的错误/稍后扩展您的代码。 -
另外,你想要的 (100010001) 看起来不像 2 dim 数组。您的代码将在对角线条目处生成一个 1 的矩阵
标签: java arrays for-loop java.util.scanner