我正在开发一个程序,它将使用二维数组来创建一个需要有5行和4列的表。在显示的值的右侧和下面的每个列的总和中应该总共有每一行。这是它应该是什么样子:
Emp. 1 Emp. 2 Emp. 3 Emp. 4 Product Totals
Product 1 ----> 12 24 18 23 77
Product 2 ----> 10 8 12 19 49
Product 3 ----> 28 40 22 16 106
Product 4 ----> 4 28 49 3 84
Product 5 ----> 14 17 25 9 65
//////////////////////////////////////////////
Emp. Totals --> 68 117 126 70
我遇到的问题是我无法弄清楚如何添加行和列。这是我到目前为止的代码。
public class TotalSales {
/**
* B. Stephens
* CSC-151
* This program will summarize the total sales by salesperson and product
*/
public static void main(String[] args) {
// create and assign values to multidimensional array
int [][] Sales = { {12,24,18,23}, {10,8,12,19}, {28,40,22,16}, {4,28,49,3}, {14,17,25,9} };
// display categories
System.out.println(" Emp. 1 Emp. 2 Emp. 3 Emp. 4 Product Totals");
// declare ProductCounter
int ProductCounter = 1;
// display array
for (int row = 0; row < Sales.length; row++){
System.out.print("Product " + ProductCounter + " -----> ");
for (int column = 0; column < Sales[row].length; column++){
System.out.printf(" %d\t", Sales[row][column]);
}
ProductCounter ++;
System.out.println();
}
System.out.println("////////////////////////////////////////////////////////////////");
System.out.println("Emp. Totals -->");
} // end main
} // end class
我在开头展示的表只是一般格式。我需要在一个月后显示这些结果,那么如何让它运行30次并将它们全部加在一起以显示每月的总数?我应该添加另一个for循环,其中counter = 0,只要计数器&lt; 30?如果是这样,我将如何添加所有结果?我不需要每日总数。我只是用它作为我需要的格式的一个例子。
答案 0 :(得分:0)
类似于应用开头的int[] totals = {0, 0, 0, 0};
int total = 0;
循环开头的 for
total += Sales[row][column]; totals[column] += Sales[row][column];
循环中 for
,
printf(total);
,
这就在最后:
for (int column = 0; column < totals.length; column++){
System.out.printf(" %d\t", totals[column]);
}