邻接矩阵相应行和列的总和

时间:2016-03-24 17:46:26

标签: c

在邻接矩阵上对相同索引的行和列求和的最简单方法是什么?

以下是一个例子:

      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

1 个答案:

答案 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++;

      }
}