程序代码:
#include <stdio.h> int fun1(int (*a)[5]) { int i , sum=0 ; for (i=0;i<5;i++) sum+=a[i][i] ; return sum ; } int fun2(int (*a)[5]) { int i ,j ,sum=0; for (i=0 ;i<5 ;i++) sum+=a[i][4-i] ; return sum ; } int fun3(int (*a)[5]) { int i ,j ,sum=0 ; for (i=0 ;i<5 ;i++) for (j=0 ;j<5 ;j++ ) sum+=a[i][j] ; return sum ; } main () { int a[5][5], b ,i,j,m,n; printf ("请输入25个数字:\n"); for (i=0;i<5;i++) for (j=0;j<5;j++) scanf ("%d" ,&a[i][j]); printf ("矩阵为:\n") ; for (i=0;i<5;i++) { for (j=0;j<5;j++) printf ("%5d",a[i][j]) ; printf ("\n") ; } b=fun1(a) ; printf ("主对角元素之和为:%d\n",b) ; m=fun2(a) ; printf ("副对角元素之和为:%d\n",m) ; n=fun3(a) ; printf ("所有元素之和为:%d\n",n); }