在C加加中利用循环和指针访问多个二维数组元素的例子
时间: 2023-05-19 17:04:16 浏览: 86
以下是一个利用循环和指针访问多个二维数组元素的例子:
```c++
int arr[3][3] = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};
int *p = &arr[0][0];
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 3; j++) {
printf("%d ", *(p + i * 3 + j));
}
printf("\n");
}
```
这个例子中,我们定义了一个3x3的二维数组arr,并将其首元素的地址赋给指针p。然后我们使用两个嵌套的循环来遍历这个二维数组,并利用指针访问每个元素的值。在每次循环中,我们使用指针算术运算来计算当前元素的地址,然后使用解引用运算符*来获取该元素的值。最后,我们将每行的元素打印出来,并在每行结束时打印一个换行符。
相关问题
利用C加加语言,定一个二维数组从键盘中输入九个整形数据作为这个数组元素指针P输出这个二维数组元素的值
好的,这是一个简单的示例程序,可以实现你的需求:
```cpp
#include <iostream>
using namespace std;
int main()
{
int arr[3][3]; // 定义一个3x3的二维数组
int *p = &arr[0][0]; // 定义一个指向数组第一个元素的指针
// 从键盘中输入9个整形数据
for(int i = 0; i < 9; i++){
cin >> *(p + i);
}
// 输出二维数组元素的值
for(int i = 0; i < 3; i++){
for(int j = 0; j < 3; j++){
cout << arr[i][j] << " ";
}
cout << endl;
}
return 0;
}
```
在这个程序中,我们首先定义了一个3x3的二维数组`arr`,然后定义了一个指向数组第一个元素的指针`p`。接着,我们使用循环从键盘中输入9个整形数据,并将它们存储在数组中。最后,我们使用嵌套循环遍历整个二维数组,并输出每个元素的值。
用C加加语言定义一个二维数组a[4][4],从键盘中输入16个整型数据作为这个数组的元素用指针P输出这个二维数组元素的值
下面是一份参考代码:
```c++
#include <iostream>
using namespace std;
int main() {
int a[4][4];
int *P = &a[0][0];
// 从键盘中输入16个整型数据
for (int i = 0; i < 16; i++) {
cin >> *(P + i);
}
// 输出二维数组元素的值
for (int i = 0; i < 4; i++) {
for (int j = 0; j < 4; j++) {
cout << a[i][j] << " ";
}
cout << endl;
}
return 0;
}
```
这里我们定义了一个 4x4 的二维数组 `a`,然后用指针 `P` 指向这个数组的第一个元素 `a[0][0]`。通过循环输入 16 个整型数据,最后再通过循环输出二维数组元素的值。
注意,指针 `P` 的类型是 `int*`,而不是 `int**`,因为这是一个一维数组,不需要使用二级指针。
阅读全文