用c++编写将一组整数的最小值替换为它的最大值。输入任意个整数,用函数编程查找最大值 和最小值,然后将最小值更新为最大值,最后在主函数中输出变换后的数组。 输入样例: 45 89 -2 8 100 输出样例: 45 89 100 8 100
时间: 2023-06-13 14:05:59 浏览: 97
以下是一个示例代码,其中 `find_min_max` 函数用于找到最大值和最小值, `replace_min_with_max` 函数用于将最小值替换为最大值:
```cpp
#include <iostream>
#include <vector>
void find_min_max(const std::vector<int>& arr, int& min_val, int& max_val) {
min_val = arr[0];
max_val = arr[0];
for (int i = 1; i < arr.size(); ++i) {
if (arr[i] < min_val) {
min_val = arr[i];
}
if (arr[i] > max_val) {
max_val = arr[i];
}
}
}
void replace_min_with_max(std::vector<int>& arr) {
int min_val, max_val;
find_min_max(arr, min_val, max_val);
for (int i = 0; i < arr.size(); ++i) {
if (arr[i] == min_val) {
arr[i] = max_val;
}
}
}
int main() {
std::vector<int> arr;
int x;
while (std::cin >> x) {
arr.push_back(x);
}
replace_min_with_max(arr);
for (int i = 0; i < arr.size(); ++i) {
std::cout << arr[i] << " ";
}
std::cout << std::endl;
return 0;
}
```
输入样例:
```
45 89 -2 8 100
```
输出样例:
```
45 89 100 8 100
```
阅读全文