C语言:输入[1,100]的数,排到5行6列数组中,求其中最大值和最小值,并把最大元素与右上角 5
#include<stdio.h>
void main()
{
int a[5][6];
int i,j,n,m,l,k;
int max=0,min;
printf("请输入5行6列数组:\n");
for(i=0;i<5;i++)
for(j=0;j<6;j++)
{
scanf("%d",&a[i][j]);
if(a[i][j]>max)
{
max=a[i][j];
n=i;
m=j;
}
}
min=a[0][0];
for(i=0;i<5;i++)
for(j=0;j<6;j++)
{
if(a[i][j]<=min)
{
min=a[i][j];
l=i;
k=j;
}
}
a[n][m]=a[0][5];
a[0][5]=max;
a[l][k]=a[4][0];
a[4][0]=min;
for(i=0;i<5;i++)
{
for(j=0;j<6;j++)
printf("%5d",a[i][j]);
printf("\n");
}
}
#include<stdio.h>
int main()
{int i,j,t,maxi=0,maxj=0,mini=0,minj=0,a[5][6];
for(i=0;i<5;i++)
for(j=0;j<6;j++)
{scanf("%d",&a[i][j]);
if(a[i][j]>a[maxi][maxj])
{maxi=i;
maxj=j;
}
else if(a[i][j]<a[mini][minj])
{mini=i;
minj=j;
}
}
printf("最大值=%d\n最小值=%d\n",a[maxi][maxj],a[mini][minj]);
t=a[maxi][maxj];
a[maxi][maxj]=a[mini][minj];
a[mini][minj]=t;
printf("交换以后:\n");
for(i=0;i<5;i++)
{for(j=0;j<6;j++)
printf("%4d",a[i][j]);
printf("\n");
}
return 0;
}