填空题
以下程序调用findmax()函数返回数组中的最大值。请填空完成此函数。
#include〈iostream〉
using namespace std;
int findmax(int*a,int n)
{
int +p、*s;
for(p=a,s=a;p-a〈n;p++)
if(〈u〉 【8】 〈/u〉)
*s=*p;
return(*S);
}
int main()
{
int x[5]={12,21,14,16};
cout〈〈findmax(X,5)〈〈end1;
return 0;
}
【正确答案】
1、*p>*s
【答案解析】[解析] 函数findmax()的功能是找出数组中的最大值。在函数findmax()中,先定义两个整型指针p和s(指针s用于保存数组中的最大值,指针p用于指向数组的各个元素),并将指针p和s指向传入数组的首元素,然后通过for循环找出最大值。所以if语句的条件表达式应该为“*p*s”,即当p指向的元素值大于s所指向的元素值时,就把*p值保存在*s中。