用c++编写程序从键盘输入n(n<=20)个数存入一维数组中,编程实现将其中的值前后倒置后重新存入该数组中并输出。
时间: 2024-12-20 13:20:06 浏览: 4
在C++中,你可以通过以下步骤来实现这个功能:
1. 首先,创建一个动态的一维整型数组,因为用户可能会输入任意大小的数字,所以需要根据`n`动态分配内存。
2. 然后,使用`cin`从键盘读取用户输入的`n`个整数,并将其存储到数组中。
3. 接着,使用两个指针,一个指向数组的开始,另一个指向结束,然后交换它们所指向的元素,直到这两个指针相遇,完成数组的反转。
4. 最后,为了展示数组的反转,遍历整个数组并输出每个元素。
下面是一个简单的示例代码实现:
```cpp
#include <iostream>
using namespace std;
int main() {
int n;
cout << "请输入一个不超过20的整数:";
cin >> n;
// 检查输入是否在范围内,如果超过则提示错误
if (n > 20) {
cout << "输入的数值超过范围,请重新输入!" << endl;
return 0;
}
int* arr = new int[n]; // 动态分配内存
for (int i = 0; i < n; i++) {
cout << "请输入第 " << (i+1) << " 个数:";
cin >> arr[i];
}
int start = 0, end = n - 1;
while (start < end) {
// 交换元素
int temp = arr[start];
arr[start] = arr[end];
arr[end] = temp;
// 移动指针
start++;
end--;
}
cout << "数组反转后的结果为:";
for (int i = 0; i < n; i++) {
cout << arr[i] << " ";
}
cout << endl;
delete[] arr; // 释放内存
return 0;
}
```
阅读全文