因此,我有一个实验室,似乎无法弄清楚如何获得每个单独的行和列的总和。这是我尝试过的:

void columnSum(int rows,  int columns ){
int sum=0;
int array[rows][columns];
for (int j=0; j<rows;++j) {
    for (int i=0; i<columns;++i){
        sum+=array[rows][columns];
    }
    printf(" %d",sum);
    sum=0;
}

void rowSum(int rows,  int columns){
int array[rows][columns];
int sum=0;
for (int i=0; i<rows;++i) {
    for (int j=0; j<columns;++j){
        sum+=array[rows][columns];
    }
    printf(" %d",sum);
    sum=0;
}


我的参数部分没有数组,因为由于某种原因,我的程序中途停止。无论如何,请让我知道如何解决此部分实验,以及如何根据样品运行格式化打印。谢谢!

最佳答案

您不能使用array [rows] [columns],因为行和列都没有变化,因此您一次又一次地添加相同的值。

 for (i=0;i<columns;i++) {
       for (j=0;j<rows;j++) {
            scanf("%d",&a[i][j]);
      }
    }
          //COLUMNS//
    for (i=0;i<columns;i++) {
        sum=0;
       for (j=0;j<rows;j++) {
        sum+=a[i][j];
      }
     printf ("columns sum= %d\n",sum);

    }
             //ROWS//
       for (j=0;j<rows;j++) {
        sum=0;
       for (i=0;i<columns;i++) {
        sum+=a[i][j];
       }
      printf ("rows sum= %d\n",sum);
    }

关于c - 在C中的多维数组中添加行和列,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/58103971/

10-12 16:14