您的位置:首页 > 编程语言 > C语言/C++

利用c++模板实现求数组最大值

2015-05-09 22:02 603 查看
#include <stdio.h>

template<typename T>
int max_array(T *pInput, int nLen, T &max)
{
if(!pInput)
{
return 0;
}
max = pInput[0];
int i = 0;
for(i = 1; i < nLen; i++)
{
if(max < pInput[i])
{
max = pInput[i];
}
}
return 1;
}

int main()
{
int nArray[5] = {9, 5, 8, 6, 7};
double fArray[6] = {5.1, 1.2, 3.4, 6.5, 4.5, 9.1};

int nMax = 0;
double fMax = 0.0;

if(max_array<int>(nArray, 5, nMax)==0)
{
printf("Error!\n");
return 0;
}
else
{
printf("最大值:%d\n", nMax);
}

if(max_array<double>(fArray, 6, fMax)==0)
{
printf("Error!\n");
return 0;
}
else
{
printf("最大值:%lf\n", fMax);
}

return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息