用c++建立求数组元素中最小值的函数模板 创建主函数,采用不同数据类型(int,double)的数组测试模板

 我来答
拥云庄主
2013-03-15 · TA获得超过2505个赞
知道小有建树答主
回答量:672
采纳率:100%
帮助的人:430万
展开全部

#include <stdio.h>

//模板函数,求数组中的最大值

//参数含义:

//tArray:数组

//iLen:数组长度

template<typename T>

T GetMaxItem(T tArray[], int iLen)

{

 T tTmp = tArray[0];

 for (int i = 0; i < iLen; ++i)

 {

  if (tTmp < tArray[i])

  {

   tTmp = tArray[i];

  }

 }

 

 return tTmp;

}

 

int main(int argc, char *argv[])

{   

//int 型测试数组

 int iArray[] = {1,4,6,7,8,9};

//double型测试数组

 double dbArray[] = {23.45,55.67,11.222,2345.56,1.11};

 

 printf("Max value in int array is:%d\n", GetMaxItem(iArray, sizeof(iArray)/sizeof(int)));

 printf("Max value in double array is:%lf\n", GetMaxItem(dbArray, sizeof(dbArray)/sizeof(double))); 

 return 0;

}

运行截图:

1317204986
2013-03-15 · TA获得超过492个赞
知道小有建树答主
回答量:291
采纳率:0%
帮助的人:358万
展开全部
#include<iostream>
using namespace std;
template<class numtype>
numtype Min(numtype *s,int len)
{
numtype min=s[0];
for(int i=0;i<len;i++)
{
if(s[i]<min)
min=s[i];
}
return min;
}
void main()
{
int a[]={1,2,3,4,5,0,7,8};
double b[]={5,1.2,9,5.1,0.4};
cout<<Min(a,sizeof(a)/sizeof(int))<<" "<<Min(b,sizeof(b)/sizeof(double))<<endl;
}
追问
在C-FREE里运行是错误的啊。。。。
追答
我用的VC6 已经运行过了
还有 程序是不存在问题的
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式