根据提示代码设计一个函数模板,能求一维数组中的所有元素的和,并写出调用此函数模板的完整程序,使得函数调用时,可以处理int、double类型的数组。
运行结果如下:(运算结果因输入值差异,不是唯一)
提示代码:
T sum(T* array,int size=0)
......
int array1[]={......};
double array2[]={......};
根据提示代码设计一个函数模板,能求一维数组中的所有元素的和,并写出调用此函数模板的完整程序,使得函数调用时,可以处理int、double类型的数组。
运行结果如下:(运算结果因输入值差异,不是唯一)
T sum(T* array,int size=0)
......
int array1[]={......};
double array2[]={......};
按照要求写模板函数就可以了啊,有什么困难
参考:
#include <iostream>
using namespace std;
template<typename T>
T sum(T* array,int size=0)
{
T sums = 0;
for(int i=0;i<size;i++)
sums += array[i];
return sums;
}
int main()
{
int a[5] = {1,2,3,4,5};
double b[5] = {9.1,8.34,4.13,-3.913,0.923};
int s1 = sum(a,5);
double s2 = sum(b,5);
cout<<"整型数组和:"<<s1<<endl;
cout<<"浮点型数组和:"<<s2<<endl;
return 0;
}