gpt4 book ai didi

java - 使用二维数组创建和打印乘法表?

转载 作者:行者123 更新时间:2023-12-01 22:43:34 25 4
gpt4 key购买 nike

我正在尝试使用二维数组创建 12x12 倍表图表。我尝试了下面的代码来实际创建数组:

    int[][] table = new int[12][12];

for (int row=0; row<12; row++){
for (int col=0; col<12; col++){
table[row][col] = row+1 * col+1;

}
}

现在我不太清楚如何正确显示它,我尝试了这个:

for(int row=0; row<table.length; row++) {
for(int col=0; col<table[row].length; col++)
System.out.print(table[row][col] + "\t");
System.out.println();
}

这给出了一个 12x12 的表格,但没有进行乘法,12x12 点(网格中的第 12 列第 12 行)是 23 而不是 144,这现在让我认为实际的数组是错误的。有什么想法吗?

最佳答案

在数学陈述中使用括号。知道乘法优先于加法。

所以你的代码行:

table[row][col] = row+1 * col+1;

相当于

table[row][col] = row + (1 * col) + 1;

这不是你想要的。你想要:

table[row][col] = (row + 1) * (col + 1);

顺便说一句,请考虑使用 String.format(...)System.out.printf(...) 来格式化输出,因为它太多了比使用制表符 \t 更强大、更灵活。另外,在游戏的阶段,您应该将所有 if block 和所有循环括在 {...} 大括号内,因为这将在以后保存您的尾部。

例如,

  for (int row = 0; row < table.length; row++) {
for (int col = 0; col < table[row].length; col++) {
System.out.printf("%6d", table[row][col]);
}
System.out.println();
}

或者,如果您希望输出右对齐,请将 "%6d" 更改为 "%-6d"

关于java - 使用二维数组创建和打印乘法表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25710200/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com