选择题
以下函数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循环之前,否则每次循环时都重新赋值,值没有变化。
提交答案
关闭