键盘输入10个数(可能为整形、浮点型、双精度型及其字符类型),分别利用函数重载和函数模板,求出其中的最大值和最小值。
时间: 2023-05-10 10:55:59 浏览: 104
C++函数重载的深入解析
好的,这是一个编程类的问题,我可以回答。以下是函数重载和函数模板的实现代码:
函数重载:
```c++
#include <iostream>
using namespace std;
int max(int a, int b) {
return a > b ? a : b;
}
float max(float a, float b) {
return a > b ? a : b;
}
double max(double a, double b) {
return a > b ? a : b;
}
char max(char a, char b) {
return a > b ? a : b;
}
int min(int a, int b) {
return a < b ? a : b;
}
float min(float a, float b) {
return a < b ? a : b;
}
double min(double a, double b) {
return a < b ? a : b;
}
char min(char a, char b) {
return a < b ? a : b;
}
int main() {
int a, b, c, d, e, f, g, h, i, j;
cin >> a >> b >> c >> d >> e >> f >> g >> h >> i >> j;
cout << "max: " << max(max(max(max(max(max(max(max(a, b), c), d), e), f), g), h), i), j) << endl;
cout << "min: " << min(min(min(min(min(min(min(min(a, b), c), d), e), f), g), h), i), j) << endl;
return 0;
}
```
函数模板:
```c++
#include <iostream>
using namespace std;
template <typename T>
T max(T a, T b) {
return a > b ? a : b;
}
template <typename T>
T min(T a, T b) {
return a < b ? a : b;
}
int main() {
int a, b, c, d, e, f, g, h, i, j;
cin >> a >> b >> c >> d >> e >> f >> g >> h >> i >> j;
cout << "max: " << max(max(max(max(max(max(max(max(a, b), c), d), e), f), g), h), i), j) << endl;
cout << "min: " << min(min(min(min(min(min(min(min(a, b), c), d), e), f), g), h), i), j) << endl;
return 0;
}
```
希望这个回答能够帮到你!
阅读全文