5. 编程实现:输入n个整数(n由用户输入,不超过100),并放入数组中,将数组元素逆序存放,并输出逆序前和逆序后数组元素的值,要求用指针实现对数组进行访问。
时间: 2025-02-10 19:15:29 浏览: 46
在C++中,你可以使用数组和指针来实现这个功能。以下是简单的步骤:
```cpp
#include <iostream>
int main() {
int n;
std::cout << "请输入数组的长度(1到100): ";
std::cin >> n;
if (n > 100) {
std::cerr << "错误:数组长度超过限制!" << std::endl;
return 1;
}
int* arr = new int[n]; // 创建动态数组
std::cout << "请输入" << n << "个整数: ";
for (int i = 0; i < n; ++i)
std::cin >> arr[i];
int* end = arr + n - 1; // 指向数组最后一个元素
// 使用两个指针,一个指向开始,另一个指向结束,交换它们所指向的元素
while (arr < end) {
std::swap(*arr, *end);
arr++; // 移动开始指针
end--; // 移动结束指针
}
std::cout << "逆序前的数组: ";
for (int i = 0; i < n; ++i)
std::cout << arr[i] << " ";
std::cout << "\n逆序后的数组: ";
for (int i = 0; i < n; ++i)
std::cout << *(arr + n - i - 1) << " "; // 注意这里是从后往前访问
delete[] arr; // 删除动态分配的内存
return 0;
}
```
在这个程序中,我们首先获取用户输入的数组长度,然后创建一个大小足够的动态数组。接着通过两个指针从两端向中间交换元素来实现数组逆序。最后分别输出逆序前和逆序后的数组内容。
阅读全文
相关推荐


















