C语言 求矩阵各行各列的和

Python07

C语言 求矩阵各行各列的和,第1张

思路:求矩阵各行的和时,矩阵的行先不变,利用for循环依次遍历该行的每一列元素累加求和;求矩阵各列的和时,矩阵的列先不变,利用for循环依次遍历该列的每一行元素累加求和。

参考代码:

#include<stdio.h>

int Sr(int a[3][5],int n)//求矩阵n行的累加和 

{

int i,j,c=0

for(j=0j<5j++)

c+=a[n][j]

return c

}

int Sc(int a[3][5],int n)//求矩阵n列的累加和 

{

int i ,j,c=0

for(i=0i<3i++)

c+=a[i][n]

return c

}

int main()

{

int i,j,a[3][5]={1,3,5,7,9,2,4,6,8,10,3,5,8,7,6} 

for(i=0i<3i++){

for(j=0j<5j++)

printf("%d ",a[i][j])

printf("\n")

}

printf("各行的累加和为:\n")

for(i=0i<3i++)

printf("%d ",Sr(a,i))

printf("\n各列的累加和为:\n")

for(i=0i<5i++)

printf("%d ",Sc(a,i))

return 0

}

/*

输出: 

1 3 5 7 9

2 4 6 8 10

3 5 8 7 6

各行的累加和为:

25 30 29

各列的累加和为:

6 12 19 22 25

*/

#include<stdio.h>

int main()

{

int a[3][4],b[3][4],c[3][4]

for(int i=0i<3i++)

for(int j=0j<4j++)

scanf("%d",&a[i][j])

printf("\n")

for(int i=0i<3i++)

for(int j=0j<4j++)

scanf("%d",&b[i][j])

printf("\n")

for(int i=0i<3i++)

for(int j=0j<4j++)

{

c[i][j]=a[i][j]+b[i][j]

printf("%d",c[i][j])

if(j!=3)

printf(" ")

else

printf("\n")

}

return 0

}