Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/151.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 如何计算二维数组中每一行的和并将其放入向量中?_C++ - Fatal编程技术网

C++ 如何计算二维数组中每一行的和并将其放入向量中?

C++ 如何计算二维数组中每一行的和并将其放入向量中?,c++,C++,我试图计算数组中每一行的和,并将其放在一个向量中, 你可以在下面找到我的尝试 为此,它为前4个打印相同的值,为后1个打印不同的值,215316 我想要的是一个例子 x1 2 4 4 6 7 Sumx1=?? x2 1 2 3 4 5 etc x3 1 2 3 4 5 x4 1 2 4 5 6 并将值Sumx1放入向量中 这是我的尝试 #include <time.h> #include <cstdlib> #include <iostream> #in

我试图计算数组中每一行的和,并将其放在一个向量中, 你可以在下面找到我的尝试

为此,它为前4个打印相同的值,为后1个打印不同的值,
215316

我想要的是一个例子

x1 2 4 4 6 7  Sumx1=??
x2 1 2 3 4 5  etc
x3 1 2 3 4 5 
x4 1 2 4 5 6
并将值Sumx1放入向量中

这是我的尝试

#include <time.h>
#include <cstdlib>
#include <iostream>
#include <vector>
using namespace std;

int main()
{
    string name;
    srand(time(NULL));

    int pay[5][4];

    vector<string> names;

    for (int i = 0; i < 5; i++)
    {
        for (int j = 0; j < 4; j++)
        {
            pay[i][j] = rand() % 51 + 50;
            cout << pay[i][j] << "  ";
        }
        cout << endl;
    }

    cout << endl << endl;

    vector<int> totals;

    for (int i = 0; i < 5; i++) {
        for (int c = 0; c < 4; c++) {
            totals.push_back((pay[i][0] + pay[i][1] + pay[i][2] + pay[i][3]));
        }
        cout << totals[i] << "  ";
    }

    return 0;
}
#包括
#包括
#包括
#包括
使用名称空间std;
int main()
{
字符串名;
srand(时间(空));
国际支付[5][4];
载体名称;
对于(int i=0;i<5;i++)
{
对于(int j=0;j<4;j++)
{
支付[i][j]=兰特()%51+50;

cout
对于(int i=0;i由于您的内循环c,您将总和
pay[i][0]+pay[i][1]+pay[i][2]+pay[i][3]
添加到向量中四次

你真正想要的是:

for(int i=0; i<5; i++){
    int sum = 0;
    for(int c=0; c<4; c++)
        sum += pay[i][c];
    totals.push_back(sum);
    cout<<totals[i]<<"  ";
}

for(int i=0;iFor totals,您同时循环0…3并计算所有列的总和。那么:i的第一个循环向总计添加了多少元素?提示:不仅仅是1。完成后,总计有多少元素?提示:不是5。
for(int i=0; i<5; i++){
    int sum = 0;
    for(int c=0; c<4; c++)
        sum += pay[i][c];
    totals.push_back(sum);
    cout<<totals[i]<<"  ";
}