所以在这里我试图从数组中取一些int并按行添加它们。 然后我将总和存储为rowTotal。如果rowTotal大于maxRow .... 我累了。有人可以指出明显的吗?
int maxRow = 0;
int playNum = 0;
for(int col = 0;col < score[0].length;col++)
maxRow += score[0][col];
for(int row = 1;row < score.length;row++)
{
int rowTotal = 0;
for(int col = 0;col < score[row].length;col++)
rowTotal += score[row][col];
if(rowTotal>maxRow)
{
playNum = row;
maxRow = rowTotal;
}
System.out.println("Player " + (playNum + 1) + " is victorious with a score of " + maxRow);
}
答案 0 :(得分:2)
你需要从第二个for {循环中取出System.out.println
。此外,您可以取消第一个for循环。
int maxRow = 0;
int playNum = 0;
for(int row = 0;row < score.length;row++)
{
int rowTotal = 0;
for(int col = 0;col < score[row].length;col++)
{
rowTotal += score[row][col];
}
if(rowTotal>maxRow)
{
playNum = row;
maxRow = rowTotal;
}
}
System.out.println("Player " + (playNum + 1) + " is victorious with a score of " + maxRow);
答案 1 :(得分:0)
这些应该可以解决您的问题,但我不知道它是什么
答案 2 :(得分:0)
System.out.println(..
应该在循环之外。
否则我不会发现这个问题,除了代码可以改进(缩短)的事实。您得到了什么错误/意外结果?
答案 3 :(得分:0)
如果从索引0开始第二个for
循环,那么就我所知,不需要第一个for
循环。不知道你为什么要在第一个循环中总结maxRow
,除非我完全忽略了这一点。