用c++ 设计一个函数模板,实现从int、float、double类型的数组找出最大值元素。

给点提示~老师题目里有“可用类型参数传递数组、用非类型参数传递数组大小”。这句不太理解

#include <iostream>
using namespace std;

template <class T>
T max(T a[], int n)
{
int i;
T m;
m = a[0];
for(i=1; i<n; i++)
{
if(m < a[i])
{
m = a[i];
}
}
return m;
}
int main()
{
int maxa,a[5]={1,4,3,2,5};
float maxb,b[5]={5.2f,3.2f,4.2f,2.3f,3.1f};
double maxc,c[5]={2.5,1.2,2.4,3.6,4.5};
maxa = max(a,5);
maxb = max(b,5);
maxc = max(c,5);
printf("%d\n%f\n%lf\n",maxa,maxb,maxc);
return 0;
}
温馨提示:内容为网友见解,仅供参考
无其他回答
相似回答