设计有10个元素的数组,前五个元素存入1~100之间的随机数,后面五个元素为键盘输入。 然后对调位置, 1-6互换,2-7互换...。打印出各步骤结果。c++
时间: 2025-01-06 20:50:19 浏览: 5
首先,你可以使用C++标准库`<iostream>`、`<cstdlib>`和`<ctime>`来实现这个功能。这里是一个简单的示例程序,说明了如何创建数组并实现元素的交换:
```cpp
#include <iostream>
#include <cstdlib> // 包含rand和srand函数
#include <ctime> // 获取当前时间
int main() {
srand(time(0)); // 设置随机数种子,以便每次运行得到不同的随机数序列
int arr[10]; // 创建一个长度为10的数组
for (size_t i = 0; i < 5; ++i) {
arr[i] = rand() % 100 + 1; // 随机生成1到100的整数
std::cout << "After filling: [" << i+1 << "] = " << arr[i] << '\n';
}
// 输入剩余5个元素
for (size_t i = 5; i < 10; ++i)
std::cin >> arr[i];
// 对数组进行逐对交换
for (size_t i = 0; i < 5; ++i) {
std::cout << "Before swap [" << i+1 << "] and [" << i+6-i << "]: ";
for (size_t j = 0; j <= 9; ++j) {
std::cout << arr[j] << ' ';
}
std::cout << '\n';
std::swap(arr[i], arr[i+6-i]); // 交换当前元素和对应位置的元素
std::cout << "After swap: [" << i+1 << "] = " << arr[i] << ", [" << i+6-i << "] = " << arr[i+6-i] << '\n';
}
return 0;
}
```
阅读全文