使用for循环和二维数组的c ++求和

时间:2013-04-27 09:31:41

标签: c++ arrays for-loop sum

我正在尝试创建一个计算每年总图书销售量的循环。我还需要计算过去三年的图书销售总额。

我已经弄清楚如何计算所有3年的总和,但是我每年销售的总订单数量计算有问题。这是我到目前为止所拥有的。

    const int months = 12;
    const int years =3;
    string namonths [months] = {"January", "February", "March", "April",
                 "May", "June", "July", "August", "September",
                 "October", "November", "December"};
int bookorders[years][months];
int sum=0;

for (int i = 0; i < years ; i++) {
for (int n = 0; n < months; n++) {

    std::cout << "Year " << i + 1 << " Month " << namonths[n] <<":"<< std::endl;

    cin >> bookorders[i][n];

    sum += bookorders[i][n];
}

}

//  std::cout << "total orders are for each year are: " << sum <<std::endl;
std::cout << "total orders are " << sum <<std::endl;

2 个答案:

答案 0 :(得分:1)

  1. 添加一个存储每年总和的新变量: int sumPerYear[years];
  2. 两者之间的陈述: sumPerYear[i] = 0;
  3. 然后在for循环核心说: sumPerYear[i] += bookorders[i][n];
  4. 最后到最后: for (int i = 0; i < years ; i++) std::cout << "year " << i << " sum: " << sumPerYear[i] << std::endl;

答案 1 :(得分:0)

在这里尝试一下。 sumperYear是最初为零的变量。在外部的每次迭代中 for循环,将显示sumperYear。

for (int i=0; i<years; i++) { for (int j=0 ; j< months; j++) { sumperYear+=bookOrders[i][j]; } cout<<"For the year:" << i+1 << " the total orders are: "<< sumperYear; sumperYear=0; }