问题 问答题

请编写函数fun,其功能是:找出2×M整型二维数组中最大元素的值,并将此值返回调用函数。
注意:部分源程序已给出。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
试题程序:
#define M 4
#include<stdio.h>
int fun(int a[][M])


void main()

int arr[2][M]=5,8,3,45,76,-4,12,2;
printf("max=%d\n",fun(arr));

答案

参考答案:int fun(int a[][M])
{
int i,j,max=a[0][0];
/*对二维数组进行遍历*/
for(i=0;i<2;i++)
for(j=0;j<M;j++)
if(max<a[iⅡj])
/*将最大值保存在max中*/
max=a[i][j]:
return max;
}

解析: 此题考查的是数组的查找算法。使用for循环嵌套完成对二维数组的遍历。题目要求出最大值,则应采用将所有元素遍历一遍,逐个比较的方式完成。定义变量max,将第一个元素赋值max,然后通过for循环将元素逐个与max比较,遇到比max大的则赋值max,替换原有数据,当嵌套的for循环结束后,max即为二维数组中的最大值。

选择题
判断题