0046 编写一个函数,该函数有三个参数,一个是二维数组,一个是二维数组的行数,一个是二维数组的列数,输出该二维数组的两条对角线元素的和。


问题描述:

  编写一个函数,用来计算二维数组的两条对角线之和。

代码展示:

 1 #include
 2 int fun(int A[4][4],int n);
 3 int main(){
 4     int result;
 5     int i,j;
 6     int A[4][4]={{1,2,3,4},{2,3,4,5},{3,4,5,6},{4,5,6,7}};
 7     result = fun(A,4);
 8     for(i=0;i<4;i++){
 9         for(j=0; j<4; j++){
10             printf("%d ",A[i][j]);
11         }
12         printf("\n");
13     }
14     printf("两条对角线的和为:%d\n",result);
15     return 0;
16 }
17 int fun(int A[4][4], int n){
18     int sum1=0, sum2=0;
19     int i,j;
20     for(i=0;i<4;i++){
21         sum1 += A[i][i];
22     }
23     for(i=0,j=n-1; i<4 && j>=0; i++,j--){
24         sum2 += A[i][j];
25     }
26     return sum1+sum2;
27 }

运行截图:

相关