Problem Description
输入一个二维数组,在二维数组中找出最大值和最小值,并指出其位置。
Input
输入一个二维数组
Output
输出最大值和最小值,和对应的位置。
Sample Input
1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16
Sample Output
min=1,a[0][0]
max=16,a[4][4]
代码如下:
#include<stdio.h>
#include<stdlib.h>
int main( )
{
int b,c,i,j,max,min;
int a[4][4];
b=c=0;
for(i=0;i<4;i++)
{
for(j=0;j<4;j++)
{
scanf("%d",&a[i][j]);//矩阵元素初始化
}
}
min=a[0][0];//初始化
for(i=0;i<4;i++)//比较元素值,找最小值
{
for(j=0;j<4;j++)
{
if(a[i][j]<min)
{
min=a[i][j];
b=i;
c=j;
}
}
}
printf("min=%d,a[%d][%d]\n",min,b,c);//输出最小值及其位置
max=a[0][0];//初始化
for(i=0;i<4;i++)//比较元素值,找最大值
{
for(j=0;j<4;j++)
{
if(a[i][j]>max)
{
max=a[i][j];
b=i;
c=j;
}
}
}
printf("max=%d,a[%d][%d]\n",max,b,c);//输出最大值及其位置
return 0;
}版权声明:本文为Moouyang_原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。