c++编写 将任意10个数输入一维数组,找出最大数放到最前面,最小数放到最后
时间: 2024-11-18 08:19:12 浏览: 25
在C++中,你可以通过以下步骤来实现这个功能:
1. 首先,创建一个动态大小的一维数组,因为你不确定用户会输入多少个数。
2. 接着,从用户那里获取10个数并存储到数组中。
3. 定义两个变量,分别用于记录当前找到的最大值和最小值,初始时假设数组的第一个元素是最小和最大。
4. 使用嵌套循环遍历数组,每次遍历时更新最大值和最小值,以及它们在数组中的位置。
5. 最后,交换最大值和数组的第一个元素(即原最大值的位置),然后交换最小值和数组的最后一个元素(即原最小值的位置)。这样,最大的数就在数组的开始,最小的数在数组的结束。
以下是简单的代码示例:
```cpp
#include <iostream>
using namespace std;
int main() {
int arr[10];
int max_val = arr[0], min_val = arr[0], max_index = 0, min_index = 0;
cout << "请输入10个整数:" << endl;
for (int i = 0; i < 10; ++i) {
cin >> arr[i];
// 更新最大值和最小值
if (arr[i] > max_val) {
max_val = arr[i];
max_index = i;
}
if (arr[i] < min_val) {
min_val = arr[i];
min_index = i;
}
}
// 交换最大值和最小值
if (max_index != min_index) {
swap(arr[max_index], arr[0]);
swap(arr[min_index], arr[9]); // 最后一个元素是原最小值
}
cout << "调整后的数组:";
for (int i = 0; i < 10; ++i) {
cout << arr[i] << " ";
}
cout << endl;
return 0;
}
```
阅读全文