A-A+

以下函数findmax拟实现在数组中查找最大值并作为函数值返回 但程序中有错导致 不能实现预

2022-08-06 02:57:29 问答库 阅读 175 次

问题详情

以下函数findmax拟实现在数组中查找最大值并作为函数值返回,但程序中有错导致
不能实现预定功能。
#define MIN-2147483647
int findmax(int x[],int n)
{int i,max;
for(i=0;i<n;i++)
{max=MIN;
if(max<x[i])max=x[i];)
return max;
}
造成错误的原因是()。
A.定义语句“int i,max;”中max未赋初值
B.赋值语句“max=MIN;”中,不应给max赋MIN值
C.语句“if(max<x[i])max=x[i];”中判断条件设置错误
D.赋值语句“max—MIN;”放错了位置请帮忙给出正确答案和分析,谢谢!

参考答案

正确答案:D
“max=MIN;”语句应放在for循环之前,否则每次循环时都重新赋值,值没有变化。

考点:函数,最大值