新闻资讯

质量为本、客户为根、勇于拼搏、务实创新

< 返回新闻资讯列表

c语言二维动态数组怎么定义,c语言怎么创建二维动态数组

发布时间:2023-10-27 13:55:25

c语言二维动态数组怎样定义

在C语言中,定义一个二维动态数组可使用指针的指针来实现。下面是一个示例代码:

#include <stdio.h>
#include <stdlib.h>

int main() {
    int rows, cols;
    
    printf("请输入二维数组的行数和列数:
");
    scanf("%d", &rows);
    scanf("%d", &cols);

    // 动态分配内存空间
    int **arr = (int **)malloc(rows * sizeof(int *));
    for (int i = 0; i < rows; i++) {
        arr[i] = (int *)malloc(cols * sizeof(int));
    }

    // 输入数组元素
    printf("请输入二维数组的元素:
");
    for (int i = 0; i < rows; i++) {
        for (int j = 0; j < cols; j++) {
            scanf("%d", &arr[i][j]);
        }
    }

    // 输出数组元素
    printf("二维数组的元素为:
");
    for (int i = 0; i < rows; i++) {
        for (int j = 0; j < cols; j++) {
            printf("%d ", arr[i][j]);
        }
        printf("
");
    }

    // 释放内存空间
    for (int i = 0; i < rows; i++) {
        free(arr[i]);
    }
    free(arr);

    return 0;
}

在上面的代码中,我们首先使用malloc函数动态分配了一块内存空间用于存储二维数组。然后,使用两个for循环来顺次输入二维数组的元素。最后,使用两个for循环将二维数组的元素输出到屏幕上。最后,使用free函数来释放动态分配的内存空间。