#include
#include
int fun(int **x,int n)
{
int i,j,result;
int *sum;
sum = (int*)malloc(sizeof(int*)*(2*n+2));
for(i=0;i<2*n+2;i++)
sum[i] = 0;
for(i=0;ifor(j=0;j sum[i] += x[i][j];
for(i=0;ifor(j=0;j sum[i+n] += x[j][i];
for(i=0;isum[2*n] += x[i][i];
for(i=n-1;i>=0;i--)
sum[2*n+1] += x[i][n-i-1];
printf("各行各列及对角线的和:\n");
for(i=0,result=1;i<2*n+2;i++)
{
if(sum[i]!=sum[0])
result = 0;
printf("%d ",sum[i]);
}
printf("\n");
return result;
}
void main()
{
int **a;
int n,i,j;
scanf("%d",&n);
a = (int**)malloc(sizeof(int*)*n);
for(i=0;ia[i] = (int*)malloc(sizeof(int*)*n);
for(i=0;ifor(j=0;j scanf("%d",&a[i][j]);
printf("返回值:%d\n",fun(a,n));
}
望采纳~
在调用的函数中可以这么写
如
定义一个指向整型数据的指针a和一个指针的指针b,在定一个整型变量c
int *a;
int **b=&a
int c;
a=&c;
fun(b,c);
.........