用带注释的c++实现多组输入:编写一个函数模板,分别求一个数组里数据的最大值和最小值。并以整型、浮点型 以及字符型验证正确性。其中,字符型按照 ASCII 码判断最大值、最小值。 输入描述: 每组数据分三行输入,第一行为整型,第二行为浮点型,第三行为字符型,一 行数据间以空格分隔 输出描述: 输出每行数据的最大值和最小值,以空格分隔
时间: 2024-02-19 12:58:09 浏览: 80
以下是带注释的C++代码实现:
```cpp
#include <iostream>
#include <algorithm> // 使用STL算法库中的min_element和max_element函数
using namespace std;
// 定义一个函数模板,求一维数组中的最大值和最小值
template<typename T>
void findMinMax(T arr[], int n, T &maxValue, T &minValue)
{
maxValue = *max_element(arr, arr+n); // 调用STL算法库中的max_element函数
minValue = *min_element(arr, arr+n); // 调用STL算法库中的min_element函数
}
int main()
{
// 分别验证整型、浮点型、字符型数组
int intArr[5] = {2, 5, 1, 7, 4};
float floatArr[5] = {1.2, 3.7, 2.1, 5.6, 4.3};
char charArr[5] = {'d', 'a', 'c', 'e', 'b'};
// 分别定义最大值和最小值变量
int intMax, intMin;
float floatMax, floatMin;
char charMax, charMin;
// 对整型数组进行最大值和最小值的计算
findMinMax(intArr, 5, intMax, intMin);
cout << intMax << " " << intMin << endl;
// 对浮点型数组进行最大值和最小值的计算
findMinMax(floatArr, 5, floatMax, floatMin);
cout << floatMax << " " << floatMin << endl;
// 对字符型数组进行最大值和最小值的计算
findMinMax(charArr, 5, charMax, charMin);
cout << charMax << " " << charMin << endl;
return 0;
}
```
输入示例:
```
2 5 1 7 4
1.2 3.7 2.1 5.6 4.3
d a c e b
```
输出示例:
```
7 1
5.6 1.2
e a
```
阅读全文
相关推荐


















