C语言编程:利用数组和指针,将一个4*4的矩阵转置,并输出矩阵中的最大值及其位置

如题所述

#include<stdio.h>

int sort(int a[4][4])
{
int i,j,k=0,t,max,m,n;
int b[16];
for(i=0;i<4;i++)
for(j=0;j<4;j++)
{
b[k]=a[i][j];
k++;
}
for(i=0;i<4;i++)
for(j=0;j<4;j++)
{
a[i][j]=b[i+j*4];
}

max=a[0][0];
for(i=0;i<4;i++)
for(j=0;j<4;j++)
{
printf("%3d",a[i][j]);
if(j==3)
printf("\n");
if(a[i][j]>max)
{
max=a[i][j];
m=i;
n=j;
}
}
printf("max=a[%d][%d]=%d\n",m,n,max);

return 0;
}

int main( void )
{
int a[4][4];
int i,j;
for(i=0;i<4;i++)
for(j=0;j<4;j++)
scanf("%d",&a[i][j]);
sort(a);
return 0;
}

温馨提示:答案为网友推荐,仅供参考
相似回答