利用函数模板原型:template<typename T> int getMaxIndex(T a[], int size=10);输入十个数找最大值
时间: 2024-02-12 21:09:14 浏览: 77
可以按照以下步骤编写程序:
1. 在主函数中定义一个长度为10的任意类型数组a,并利用循环语句输入10个元素。
2. 在主函数中调用getMaxIndex函数模板,将数组a和参数10传入函数中。
3. 在getMaxIndex函数模板中,利用循环语句遍历数组a,找到最大值以及对应的下标。
4. 将最大值的下标作为函数返回值返回给主函数。
5. 在主函数中输出最大值以及其下标。
以下是完整的代码实现:
```c++
#include <iostream>
using namespace std;
template<typename T>
int getMaxIndex(T a[], int size=10) {
int max_index = 0;
for (int i = 1; i < size; i++) {
if (a[i] > a[max_index]) {
max_index = i;
}
}
return max_index;
}
int main() {
int a[10];
for (int i = 0; i < 10; i++) {
cout << "请输入第" << i+1 << "个数:";
cin >> a[i];
}
int max_index = getMaxIndex(a, 10);
cout << "最大值为:" << a[max_index] << endl;
cout << "最大值的下标为:" << max_index << endl;
return 0;
}
```
可以看到,通过函数模板,我们可以实现对不同类型的数组求最大值的功能。
阅读全文