#include<stdio.h>
#include<conio.h>
void exchange(int a[5][5]); //会调用编写的void exchange()函数
int mn(int a[5][5],int m);
int nm(int b[5][5],int m);
void main()
{
int a[5][5],m,n,k,tot;
for(m=0;m<5;m++)
{
if(m==0) a[m][0]=1;
else a[m][0]=m*5; //对第一列数组赋初值
}
for(m=0;m<5;m++)
for(n=1;n<5;n++)
a[m][n]=a[m][0]*(n+1);
for(m=0;m<5;m++)
{ for(n=0,k=0;n<5;k++,n++)
printf("%4d",a[m][n]);
if(k%5==0)
printf("\n");
}
exchange(a);
printf("\n\n");
for(m=0;m<5;m++)
{
int t;
t=mn(a,m);
printf("第%d行的和是:%d\n",m+1,t);
}
printf("\n");
for(m=0;m<5;m++)
{ int t;
t=nm(a,m);
printf("第%d列的和是:%d\n",m+1,t);
}
getchar();
}
void exchange(int a[5][5])
{ int k,m,n;
for(m=0;m<5;m++)
for(n=0;n<5;n++)
{
k=a[m][n];
a[m][n]=a[n][m];
a[n][m]=k;
}
}
int mn(int a[5][5],int m)
{ int n,t=0;
for(n=0;n<5;n++)
t=t+a[m][n];
return(t);
}
int nm(int b[5][5],int m)
{ int n,t=0;
for(n=0;n<5;n++)
t=t+b[n][m];
return(t);
}
运行结果: