Добавление строк и столбцов в многомерных массивах в C - PullRequest
0 голосов
/ 25 сентября 2019

Итак, у меня есть лаборатория, в которой я не могу понять, как получить сумму каждой отдельной строки и столбца.Вот что я попробовал:

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;
}

У меня нет массива в секции аргументов, потому что по какой-то причине моя программа останавливается на полпути.В любом случае, пожалуйста, дайте мне знать, как решить эту часть лабораторной работы и как отформатировать печать в соответствии с пробным прогоном.Спасибо!

1 Ответ

0 голосов
/ 26 сентября 2019

Вы не можете использовать массив [строки] [столбцы], потому что строки и столбцы не меняются, поэтому вы просто добавляете одно и то же значение снова и снова.

 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);
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...