73 lines
2.0 KiB
C
73 lines
2.0 KiB
C
/*
|
|
* C program to read a matrix A (MxN) & find the following using
|
|
* functions a) Sum of the elements of each row
|
|
* b) Sum of the elements of each column
|
|
* c) Find the sum of all the elements of the matrix
|
|
* Output the computed results
|
|
*/
|
|
#include <stdio.h>
|
|
int Addrow(int array1[10][10], int k, int c);
|
|
int Addcol(int array1[10][10], int k, int r);
|
|
|
|
void main()
|
|
{
|
|
int arr[10][10];
|
|
int i, j, row, col, rowsum, colsum, sumall=0;
|
|
printf("Enter the order of the matrix \n");
|
|
scanf("%d %d", &row, &col);
|
|
printf("Enter the elements of the matrix \n");
|
|
for (i = 0; i < row; i++)
|
|
{
|
|
for (j = 0; j < col; j++)
|
|
{
|
|
scanf("%d", &arr[i][j]);
|
|
}
|
|
}
|
|
printf("Input matrix is \n");
|
|
for (i = 0; i < row; i++)
|
|
{
|
|
for (j = 0; j < col; j++)
|
|
{
|
|
printf("%3d", arr[i][j]);
|
|
}
|
|
printf("\n");
|
|
}
|
|
/* computing row sum */
|
|
for (i = 0; i < row; i++)
|
|
{
|
|
rowsum = Addrow(arr, i, col);
|
|
printf("Sum of row %d = %d\n", i + 1, rowsum);
|
|
}
|
|
/* computing col sum */
|
|
for (j = 0; j < col; j++)
|
|
{
|
|
colsum = Addcol(arr, j, row);
|
|
printf("Sum of column %d = %d\n", j + 1, colsum);
|
|
}
|
|
/* computation of all elements */
|
|
for (j = 0; j < row; j++)
|
|
{
|
|
sumall = sumall + Addrow(arr, j, col);
|
|
}
|
|
printf("Sum of all elements of matrix = %d\n", sumall);
|
|
}
|
|
/* Function to add each row */
|
|
int Addrow(int array1[10][10], int k, int c)
|
|
{
|
|
int rsum = 0, i;
|
|
for (i = 0; i < c; i++)
|
|
{
|
|
rsum = rsum + array1[k][i];
|
|
}
|
|
return(rsum);
|
|
}
|
|
/* Function to add each column */
|
|
int Addcol(int array1[10][10], int k, int r)
|
|
{
|
|
int csum = 0, j;
|
|
for (j = 0; j < r; j++)
|
|
{
|
|
csum = csum + array1[j][k];
|
|
}
|
|
return(csum);
|
|
} |