【发布时间】:2018-03-19 07:39:56
【问题描述】:
如果我们有这些数字
array [][]
{1, 2, 3, 4},
{1, 2, 20, 4},
{1, 20, 2, 4},
{1, 2, 3, 4},};
应该是这样的
1 0 0 4
0 0 0 0
0 0 0 0
1 0 0 4
但我只能像这样输出代码...
1 0 3 4
1 0 20 4
0 0 0 0
1 0 3 4
我不明白如何纠正它,请帮助我, 这是我的代码。谢谢!
package com.company;
public class Main {
public static void main(String[] args) {
int[][] array2 = {{1, 2, 3, 4},
{1, 2, 20, 4},
{1, 20, 2, 4},
{1, 2, 3, 4},};
int countMax = 0;
int countIndexHorizontal = 0;
int countIndexVertical = 0;
int max = Integer.MIN_VALUE;
int m, k,x;
for (int i = 0; i < array2.length; i++) {
for (int j = 0; j < array2[i].length; j++) {
if (array2[i][j] > max) {
max = array2[i][j];
}
}
}
for (k = 0; k < array2.length; k++) {
for (m = 0; m < array2[k].length; m++) {
if (array2[k][m] == max) {
countIndexHorizontal = k;
countIndexVertical = m;
for (x = 0; x < array2.length; x++) {
for (int j = 0; j < array2[x].length; j++) {
if (countIndexVertical == x || j == countIndexHorizontal) {
array2[x][j] = 0;
}
}
}
}
}
}
for (int i = 0; i < array2.length; i++) {
for (int j = 0; j < array2[i].length; j++) {
System.out.print(array2[i][j] + " ");
}
System.out.println();
}
}
}
看起来有很多代码和一些文字和网站不允许我最终发布我的问题,我真的很生气,也许这篇文字会帮助我解决这个问题。
【问题讨论】:
-
为什么它看起来像'this'?
-
因为程序应该找到最大值并删除所有包含最大值的行和列
-
你想说的是consist而不是contain?如果我们将您的输入理解为矩阵,则最大值为
20,因此包含20的所有行和列的值都必须设置为0。 -
请同时在问题内而不是仅在标题中给出任务。如您所见,否则它会使人们感到困惑。
-
是的,我想说包含。对不起,英语不是我的母语。好的,下次我会做的。
标签: java