1.C++设计对整数求最大值的重载函数max,要求:(1)对两个整数求最大值;(2)对三个整数求最大值;(3)设计一个主函数对以上函数进行测试
时间: 2024-11-03 17:14:26 浏览: 19
在C++中,你可以通过模板(Template)和重载(Overload)的方式设计一个通用的`max`函数,以便同时处理两个和三个整数的最大值。这里是一个简单的示例:
```cpp
#include <iostream>
// 单元处理两个整数的最大值
template <typename T>
T max(T a, T b) {
return (a > b) ? a : b;
}
// 扩展到三个整数的最大值,利用前两个结果和第三个数比较
template <typename T>
T max(T a, T b, T c) {
return max(max(a, b), c);
}
// 主函数进行测试
int main() {
int i1 = 5, i2 = 7, i3 = 3;
std::cout << "Max of two integers: " << max(i1, i2) << std::endl;
std::cout << "Max of three integers: " << max(i1, i2, i3) << std::endl;
// 对其他数据类型测试,例如double
double d1 = 3.14, d2 = 2.718;
std::cout << "Max of two doubles: " << max(d1, d2) << std::endl;
return 0;
}
```
在这个例子中,`max`函数首先实现了处理两个参数的情况,然后作为一个模板扩展到了三个参数。主函数展示了如何在整数和浮点数之间切换并调用这个通用的`max`函数。
阅读全文