遅くなったけど、俺はこんな風に書いてみた。
第三引数のフラグでMAXを求めるかMINを求めるか指定する

int MaxMin(int *array ,unsigned int length,bool flg)//MAXを求めるときはflgにtrueを、MINを求めるときはfalseを指定する
{
int res;
res=array[0];
for(unsigned int i=1;i<length;i++)
{
if((res<=array[i])==flg)
{
res=array[i];
}
}
return res;
}

インデントないと見にくすぎるんで、全角スペースを使ってる。
コピペはできないんで注意