目录
一、获取二维数组最大值
C语言实现一个功能,获取一个二维数组的最大值,要怎么做呢?
1、基本思路
要找最大值,一个简单易行的方法就是遍历这个二维数组,从第一行开始遍历,一直遍历到最后一行结束。
遍历过程中每当发现一个当下最大的值就记下来,当找到更大的值时就更新这个最大值,这样遍历结束后,最大值就找到啦!
找最小值的思路一样的。
2、C程序代码参考
动手敲代码,这里给出一段函数代码,是实现上述思路的C代码,我们来看看。
int maxf(int array[ROW][COL])
{
int i = 0,j = 0, max = array[0][0];
for(i=0;i<ROW;i++)
for(j=0;j<COL;j++)
{
if(array[i][j]>max)
{
max=array[i][j];
}
}
return max;
}
完整的可运行的C程序代码读者可以试试写出来。
3、运行结果
我的完整C程序写完,我们来看看结果:
不错,结果也正确哈哈!
二、获取二维数组最大值的行号和列号
C语言实现一个功能,要求找到二维数组的最大值,以及这个最大值所在的行号和列号。
这个练习在上一个练习基础上多了一个要求,就是要找到最大值的行号和列号,我们来看看。
1、基本思路
要找到最大值的行号和列号,在上一个练习思路的基础上还要做一个事,就是在找到当下最大值的同时把行号和列号也记下来,然后继续找到更大的值时同步更新行号和列号,遍历完二维数组后,最大值的行号和列号也就有了。
2、C程序代码参考
动手敲代码,这里给出一段函数代码,是实现上述思路的C代码,我们来看看。v
int maxf(int array[ROW][COL],int *row,int *col)
{
int i = 0,j = 0, max = array[0][0];
for(i=0;i<ROW;i++)
for(j=0;j<COL;j++)
{
if(array[i][j]>max)
{
max=array[i][j];
*row=i;
*col=j;
}
}
return max;
}
完整的可运行的C程序代码读者可以试试写出来。
3、运行结果
我的完整C程序写完,我们来看看结果:
不错,结果也正确哈哈!