关于#c++#的问题:(M、N由键盘输入)

输入一个M*N整型的二维数组,对其每列求和,和单独存放在一个一维数组中。(M、N由键盘输入)


#include <stdio.h>
#include <iostream>
using namespace std;
int main(){
    int m,n;
    cin >> m >> n;
    int a[m][n];
    for(int i = 0;i < m;i++){
        for(int j = 0;j < n;j++){
            cin >> a[i][j];
        }
    }
    int res[n];
    for(int i = 0;i < n;i++){
        int sum = 0;
        for(int j = 0;j < m;j++){
            sum += a[j][i];
        }
        res[i] = sum;
    }
    for(int i = 0;i < n;i++){
        cout << res[i] << " ";
    }
    return 0;
}
#include<iostream>
using namespace std;
int main()
{
    int i,j,n,m,s=0;
    cin >> m >> n;
    int **a=(int**) malloc(m*sizeof(int*));
    for(i=0;i<n;i++)
    {
        *(a+i)=(int*)malloc(n*sizeof(int));
    }
    int *b=(int*) malloc(n*sizeof(int));
    for(i=0;i<m;i++)
    {
        for(j=0;j<n;j++)
        {
            cin >> a[i][j];
        }
    }
    for(i=0;i<n;i++)
    {
        s=0;
        for(j=0;j<m;j++)
        {
            s=s+a[j][i];
        }
        b[i]=s;
    }
    for(i=0;i<n;i++)
    {
       cout << b[i] << endl;
    }
    return 0;
}