首页 > 代码库 > sdut 面向对象程序设计上机练习二(函数模板)
sdut 面向对象程序设计上机练习二(函数模板)
面向对象程序设计上机练习二(函数模板)
Time Limit: 1000MS Memory limit: 65536K
题目描述
利用数组和函数模板求5个数最大值(分别考虑整数、单精度、长整数的情况)。
输入
分别输入5个int型整数、5个float 型实数、5个long型正整数。
输出
分别输出5个int型整数的最大值、5个float 型实数的最大值、5个long型正整数的最大值。
示例输入
11 22 666 44 55 11.11 22.22 33.33 888.88 55.55 1234567 222222 333333 444444 555555
示例输出
666 888.88 1234567
同一道题,运用函数模板就比运用函数重载要省事很多
而且代码的可读性和简洁性都有了。。
#include <iostream> using namespace std; //模板声明,T为类型参数 template <typename T> //定义一个通用函数,用T做虚拟的类型名 T max(T a[]) { int i; T m=0; for(i=0; i<5; i++) { if(a[i]>m) m=a[i]; } return m; } //主函数 int main() { int i; int x[5],X; float y[5],Y; long z[5],Z; //输入 for(i=0; i<5; i++) cin >> x[i]; for(i=0; i<5; i++) cin >> y[i]; for(i=0; i<5; i++) cin >>z[i]; //模板调用 X=max(x); Y=max(y); Z=max(z); //输出 cout << X << endl; cout << Y << endl; cout << Z << endl; return 0; }
sdut 面向对象程序设计上机练习二(函数模板)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。