How to sum 2D array (matrix) rows in C

1 Answer

0 votes
#include <stdio.h>
         
void sum_matrix_rows(int matrix[][5], int rows_sum[3], int rows, int cols)
{
    for (int i = 0; i < rows; i++) {
        for (int j = 0; j < cols; j++)
            rows_sum[i] += matrix[i][j];
    }
}
  
int main()
{
    int matrix[3][5] = { { 1, 1, 1, 1, 1 },
                         { 2, 2, 2, 2, 2 },
                         { 3, 3, 3, 3, 3 } };
  
    int rows_sum[3] = { 0 };
    int rows = sizeof matrix / sizeof matrix[0];
    int cols = sizeof matrix[0] / sizeof(int);
  
    sum_matrix_rows(matrix, rows_sum, rows, cols);
  
    for (int i = 0; i < 3; i++)
        printf("%d\n", rows_sum[i]);
  
    return 0;
}
 
 
/*
run:
 
5
10
15
 
*/
  

 



answered Apr 13, 2018 by avibootz
edited Apr 13, 2018 by avibootz

Related questions

1 answer 220 views
220 views asked Apr 12, 2018 by avibootz
2 answers 406 views
1 answer 277 views
277 views asked Apr 17, 2018 by avibootz
1 answer 300 views
300 views asked Apr 16, 2018 by avibootz
1 answer 263 views
1 answer 315 views
315 views asked Apr 16, 2018 by avibootz
1 answer 233 views
233 views asked Apr 13, 2018 by avibootz
...