c++习题,请问怎么回答啊

从键盘上输入10个数据到一维数组中,然后找出数组中的最大值和该值所在的元素序号(从1开始)。 要求调用子函数search(int *pa,int n,int *pmax,int *pflag)完成,数组名作为实参, 指针作为形参,最大值和序号在形参中以指针的形式返回。

遍历数组就好了,记录最大值的下标

/*
从键盘上输入10个数据到一维数组中,然后找出数组中的最大值和该值所在的元素序号(从1开始)。 要求调用子函数search(int *pa,int n,int *pmax,int *pflag)完成,数组名作为实参, 指针作为形参,最大值和序号在形参中以指针的形式返回
*/
#include <iostream>
using namespace std;
void search(int *pa,int n,int *pmax,int *pflag)
{
      *pflag= 0;
      for(int i=1;i<n;i++)
      {
            if(pa[i] > pa[*pflag])
                  *pflag= i;
      }
      *pmax = pa[*pflag];
}
int main()
{
    int a[10],maxid=0,max=0;
    for(int i=0;i<10;i++)
        cin>>a[i];
    search(a,10,&max,&maxid);
    cout<<"a["<<maxid<<"]="<<max;
    return 0;
}