欢迎光临
我们一直在努力

c语言如何定义二维数组并赋值

C语言如何定义二维数组并赋值

什么是二维数组

二维数组是指数组的每个元素都是一个数组,这样的数组称为二维数组,在C语言中,二维数组可以用两组数据类型来定义,即行下标的数据类型和列下标的数据类型,定义一个3行4列的整型二维数组,可以使用以下语句:

int arr[3][4];

如何定义二维数组

1、静态初始化

在编译时就为二维数组的所有元素赋初值,定义一个3行4列的整型二维数组,并为其所有元素赋初值,可以使用以下语句:

int arr[3][4] = {
    {1, 2, 3, 4},
    {5, 6, 7, 8},
    {9, 10, 11, 12}
};

2、动态初始化

在运行时为二维数组的所有元素赋初值,定义一个3行4列的整型二维数组,并为其所有元素赋初值,可以使用以下语句:

int arr[3][4];
for (int i = 0; i < 3; i++) {
    for (int j = 0; j < 4; j++) {
        arr[i][j] = i * j;
    }
}

如何访问二维数组的元素

1、通过行下标和列下标访问元素

要访问二维数组的某个元素,需要先通过行下标找到该行,然后再通过列下标找到该列,要访问上面定义的二维数组arr中第2行第3列的元素(值为6),可以使用以下语句:

int value = arr[1][2]; // 注意:数组下标从0开始,所以第2行的下标是1,第3列的下标是2

2、使用指针访问二维数组的元素

可以使用指针变量指向二维数组的某个元素,首先定义一个指向整型的指针变量,然后通过指针变量访问二维数组的元素,要访问上面定义的二维数组arr中第2行第3列的元素(值为6),可以使用以下语句:

int (*p)[4] = &arr[1]; // p指向第2行(即第1个元素)
int value = (*p)[2]; // 通过指针变量访问第3列(即第3个元素)的值

相关问题与解答

1、如何遍历二维数组?

要遍历二维数组的所有元素,可以使用两层嵌套循环,外层循环控制行,内层循环控制列,遍历上面定义的二维数组arr中的所有元素及其地址和值,可以使用以下代码:

include <stdio.h>
int main() {
    int arr[3][4] = {
        {1, 2, 3, 4},
        {5, 6, 7, 8},
        {9, 10, 11, 12}
    };
    for (int i = 0; i < 3; i++) {
        for (int j = 0; j < 4; j++) {
            printf("arr[%d][%d] = %d\t", i, j, arr[i][j]); // %d表示输出整型数值的占位符
        }
        printf("
"); // 每行结束换行
    }
    return 0;
}
赞(0) 打赏
未经允许不得转载:九八云安全 » c语言如何定义二维数组并赋值

评论 抢沙发