在邻接矩阵上对相同索引的行和列求和的最简单方法是什么?
以下是一个例子:
A B C D
A 1 0 2 1
B 3 - - -
C 0 - - -
D 1 - - -
其中( - )是条目。如何将A列与A行相加,B列与B行....
例如,对于A:(1 + 0 + 2 + 1)+(1 + 3 + 0 + 1)= 9
答案 0 :(得分:-3)
尝试此代码....我在代码中添加了注释以理解逻辑
#include<stdio.h>
int main(){
int arr[20][20],i,j,n;
int k,sum=0;
printf("\nEnter matrix size: ");
scanf("%d",&n);
printf("\nEnter the matrix");
// to read the matrix
for(i=0;i<n;i++){
for(j=0;j<n;j++){
scanf("%d",&arr[i][j]);
}
}
//to display the matrix
printf("\nMatrix is : ");
for(i=0;i<n;i++){
printf("\n");
for(j=0;j<n;j++){
printf(" %d",arr[i][j]);
}
}
k=0;
//to add corresponding rows and column elements
while(k<n){
sum=0;
for(i=0;i<n;i++){
sum=sum+arr[k][i];
}
for(i=0;i<n;i++){
sum=sum+arr[i][k];
}
//to print the result
printf("\nFor row and column number %d sum is %d",k,sum);
k++;
}
}