在一个动态录入的二维数组中找到一个最大的数,最小值并输出值和他所在的行和列
程序员文章站
2024-03-16 12:55:22
...
//在一个动态录入的二维数组中找到一个最大的数,最小值并输出值和他所在的行和列
#include <stdio.h>
int main()
{
int a[3][4];
int max;//最大值
int m1;//最大值的行数
int n1;//最大值列数
int m2;//最小值的行数
int n2;//最小值的列数
int min;//最小值
int i,j;
printf("请输入12个整数:\n");
for(i = 0;i < 3;i ++)
{
for(j = 0;j < 4;j ++)
{
scanf("%d",&a[i][j]);
}
}
//打印这个用户输入的数组
for(i = 0;i < 3;i ++)
{
for(j = 0;j < 4;j ++)
{
printf("%d\t",a[i][j]);
}
printf("\n");
}
//比较找最大值
max = a[0][0];
for(i = 0;i < 3;i ++)
{
for(j = 0;j < 4;j ++)
{
if(max < a[i][j])
{
max = a[i][j];
m1 = i;
n1 = j;
}
}
}
//找最小值
min = a[0][0];
for(i = 0;i < 3;i ++)
{
for(j = 0;j < 4;j ++)
{
if(min > a[i][j])
{
min = a[i][j];
m2 = i;
n2 = j;
}
}
}
//打印最大值最小值,和他们的行数和列数
printf("最大值%d\n行数%d\t列数%d\n",max,m1 + 1,n1 + 1);
printf("最小值%d\n行数%d\t列数%d\n",min,m2 + 1,n2 + 1);
}