指定二维数组行数和列数并遍历
时间: 2024-01-29 13:14:26 浏览: 40
可以使用双重 for 循环来遍历二维数组。
以下示例代码定义了一个 3 行 4 列的二维数组,并使用双重 for 循环遍历数组:
```java
int[][] arr = new int[3][4];
// 给二维数组赋值
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 4; j++) {
arr[i][j] = i * 4 + j + 1;
}
}
// 遍历二维数组
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 4; j++) {
System.out.print(arr[i][j] + "\t");
}
System.out.println();
}
```
输出结果为:
```
1 2 3 4
5 6 7 8
9 10 11 12
```
其中,外层循环控制行数,内层循环控制列数。使用 `arr[i][j]` 可以获取二维数组中第 i 行第 j 列的元素值。
相关问题
用C语言编写代码要求输入一个二维数组,实现自动遍历这个二维数组,得出这个二维数组的行数和列数,
以下是用C语言编写的实现:
```c
#include <stdio.h>
int main() {
int arr[100][100], rows, cols;
printf("请输入二维数组的行数和列数:\n");
scanf("%d %d", &rows, &cols);
printf("请输入二维数组:\n");
for (int i = 0; i < rows; i++) {
for (int j = 0; j < cols; j++) {
scanf("%d", &arr[i][j]);
}
}
printf("二维数组为:\n");
for (int i = 0; i < rows; i++) {
for (int j = 0; j < cols; j++) {
printf("%d ", arr[i][j]);
}
printf("\n");
}
printf("二维数组的行数为:%d\n", rows);
printf("二维数组的列数为:%d\n", cols);
return 0;
}
```
解释一下代码:
1. 声明一个二维数组 `arr`,以及变量 `rows` 和 `cols`,分别表示二维数组的行数和列数。
2. 通过 `scanf` 函数输入二维数组的行数和列数,注意要加上取地址符 `&`。
3. 通过两重循环输入二维数组的每个元素。
4. 通过两重循环输出二维数组的每个元素。
5. 输出二维数组的行数和列数。
C语言如何实现将指针传参传入的二维数组输出行数和列数
可以使用以下方法实现将指针传参传入的二维数组输出行数和列数:
```c
#include <stdio.h>
void printArray(int (*arr)[], int rows, int cols) {
printf("Number of rows: %d\n", rows);
printf("Number of columns: %d\n", cols);
for (int i = 0; i < rows; i++) {
for (int j = 0; j < cols; j++) {
printf("%d ", *((arr+i*cols)+j));
}
printf("\n");
}
}
int main() {
int arr[][3] = {{1,2,3}, {4,5,6}, {7,8,9}};
int rows = sizeof(arr) / sizeof(arr[0]);
int cols = sizeof(arr[0]) / sizeof(int);
printArray(arr, rows, cols);
return 0;
}
```
在上面的代码中,我们定义了一个名为`printArray`的函数,该函数接收一个指向二维数组的指针,以及该数组的行数和列数作为参数。在函数内部,我们首先输出行数和列数,然后使用两个嵌套循环遍历整个数组,并将每个元素打印到控制台上。
在主函数中,我们声明了一个二维数组`arr`,并使用`sizeof`运算符计算出了行数和列数。然后,我们调用`printArray`函数,将数组指针、行数和列数作为参数传递给该函数。最后,我们输出了整个数组。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)