题目描述
定义类模板,类中包含一个有k(0<k<20)个元素的数组;定义成员函数max()求出这k个元素中的最大数。在main()中建立对象,调用max()求多个整数和多个实数中的最大数。
注意必须使用类模板。
输入
有4行。第1行是整数的个数n (0<n<20) ,第2行是n个整数;第3是实数的个数m ( 0<m<20),第4行是m个实数。
输出
有2行。第1行n个整数中的最大数,第2行为m个实数中的最大数。
样例输入 Copy
4
6 10 8 5
3
7.556 9.258 15.54
样例输出 Copy
10
15.54
# include <iostream>
using namespace std;
template <class numtype>
class Test
{
public:
Test()
{
cin >> n;
for (int i = 0; i < n; i++)
{
cin >> data[i];
}
}
numtype Max()
{
numtype max = data[0];
for (int i = 0; i < n; i++)
{
if (data[i] > max)
max = data[i];
}
return max;
}
private:
numtype data[20];
int n;
};
int main()
{
Test <int> t1;
Test<double> t2;
cout << t1.Max() << endl;
cout << t2.Max() << endl;
return 0;
}