Передача матрицы функции и вычисление суммы каждой строки - PullRequest
0 голосов
/ 25 ноября 2018

Как я могу передать матрицу функции и вычислить сумму каждой строки?Это функция, которую я создал, но я застрял здесь.Пожалуйста, помогите, ребята.

#include <stdio.h>
#define row 4
#define col 4

int Schum(int A[row][col]){
    int sum, i, j;
    for (i=0; i<row; i++){
        sum = 0;
        for (j=0; j<col; j++){
            sum += A[i] [j];  
        }
    } 
    return sum;  
}

int main(){
    int A[row] [col], i, j, sum;
    for (i=0; i<row; i++){
        for (j=0; j<col; j++){
            printf("Enter number in [%d][%d]: ", i, j);
            scanf("%d", &A[i] [j]);
        }
    }

    for (i=0; i < row; i++){
        for(j=0; j < col; j++){
            printf("[%d][%d]: %d\t", i, j, A[i][j]); 
            sum = Schum(A);
        } 
        printf("Sum of row%d: %d\n", i+1, sum);
    }
}

Ответы [ 2 ]

0 голосов
/ 26 ноября 2018

Вот тот.Передача номера строки, которую вы хотите суммировать по столбцам, и вызов функции Шума вне итерации столбца, но внутри итерации строки достаточно для достижения вашей цели.

#include <stdio.h>
#define row 4
#define col 4

int Schum(int A[row][col], int rowParam){
  int sum = 0, j;
  for (j = 0; j < col; j++){
    sum += A[rowParam][j];  
  }

  return sum;
}

int main(){ 
  int A[row][col], i, j, sum;

  for (i=0; i < row; i++){
    for (j=0; j < col; j++){
      printf("Enter number in [%d][%d]: ", i, j);
      scanf("%d", &A[i][j]);
    }
  }

  for (i=0; i < row; i++){
    for(j=0; j < col; j++){
      printf("[%d][%d]: %d\t", i, j, A[i][j]); 
    } 

    sum = Schum(A, i);
    printf("Sum of row%d: %d\n", i+1, sum);
  }
}
0 голосов
/ 26 ноября 2018

Ваша функция Шума неверна.Вам не нужно циклически перебирать все элементы матрицы, чтобы найти сумму данной строки.Вы также неправильно вызываете функцию Шума для каждого элемента матрицы из main ().Его следует вызывать только один раз для каждой строки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...