vc6.02、采用指针访问方式从键盘给数组a[n]输入数据,然后对元素值重新按逆序存放并输出。 编程提示: (1)、使用指针访问数组时,要随时注意指针的指向。 (2)、通过指针输入完数据后,指针已经指向输出的尾部,需要将指针重新指向数组的首地址或其他元素的位置,才可以再用指针访问。
时间: 2023-07-20 21:05:18 浏览: 162
以下是实现的代码:
```c++
#include <iostream>
using namespace std;
int main() {
int n;
cout << "请输入数组的长度:";
cin >> n;
int a[n];
cout << "请输入" << n << "个整数:" << endl;
int *p = a; // 定义指向数组首元素的指针
for (int i = 0; i < n; i++) {
cin >> *(p+i); // 通过指针访问数组元素并输入数据
}
cout << "逆序输出为:" << endl;
p = a + n - 1; // 指针重新指向数组尾部
for (int i = 0; i < n; i++) {
cout << *p << " "; // 通过指针访问数组元素并输出数据
p--; // 指针向前移动
}
return 0;
}
```
在程序中,我们先通过 `cin` 输入数组的长度 `n`,然后定义一个大小为 `n` 的整型数组 `a`,同时定义一个指向数组首元素的指针 `p`。接着,通过 `for` 循环和指针访问的方式,将用户输入的数据存储到数组中。
在输出逆序数组时,我们需要重新将指针 `p` 指向数组尾部,即 `a + n - 1`,然后通过 `for` 循环和指针访问的方式,按逆序输出数组元素。
需要注意的是,在输入完数据后,指针 `p` 已经指向了数组的尾部,因此在输出逆序数组前,我们需要将指针重新指向数组的首地址或其他元素的位置。
阅读全文