c语言二维数组例题

晚间偷亲

C语言二维数组例题解析与应用

二维数组在C语言中是一种常见的数据结构,它可以用来存储表格数据或矩阵。本文将通过几个例题来展示二维数组的声明、初始化、遍历以及一些常见操作。

一、二维数组的声明与初始化

在C语言中,二维数组可以看作是数组的数组。声明一个二维数组的基本语法如下:

int array[行数][列数];

初始化二维数组,可以逐个元素赋值,也可以使用初始化列表:

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

二、二维数组的基本操作

例题1:打印二维数组

编写一个程序,打印上述初始化的二维数组。

#include 

int main() {
    int array[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("%d ", array[i][j]);
        }
        printf("\n");
    }

    return 0;
}
例题2:计算二维数组中的最大值

编写一个程序,找出上述二维数组中的最大值。

#include 

int main() {
    int array[3][4] = {
        {1, 2, 3, 4},
        {5, 6, 7, 8},
        {9, 10, 11, 12}
    };
    int max = array[0][0];

    for (int i = 0; i < 3; i  ) {
        for (int j = 0; j < 4; j  ) {
            if (array[i][j] > max) {
                max = array[i][j];
            }
        }
    }

    printf("The maximum value is: %d\n", max);

    return 0;
}

三、二维数组的应用

例题3:矩阵转置

编写一个程序,实现矩阵的转置操作。

#include 

int main() {
    int matrix[3][3] = {
        {1, 2, 3},
        {4, 5, 6},
        {7, 8, 9}
    };
    int transpose[3][3];

    for (int i = 0; i < 3; i  ) {
        for (int j = 0; j < 3; j  ) {
            transpose[j][i] = matrix[i][j];
        }
    }

    printf("Original Matrix:\n");
    for (int i = 0; i < 3; i  ) {
        for (int j = 0; j < 3; j  ) {
            printf("%d ", matrix[i][j]);
        }
        printf("\n");
    }

    printf("Transposed Matrix:\n");
    for (int i = 0; i < 3; i  ) {
        for (int j = 0; j < 3; j  ) {
            printf("%d ", transpose[i][j]);
        }
        printf("\n");
    }

    return 0;
}
例题4:螺旋打印矩阵

编写一个程序,实现矩阵的螺旋打印。

#include 

void spiralPrint(int matrix[4][4], int rows, int cols) {
    int rowStart = 0, colStart = 0;

    while (rowStart < rows 
版权声明:本页面内容旨在传播知识,为用户自行发布,若有侵权等问题请及时与本网联系,我们将第一时间处理。E-mail:284563525@qq.com

目录[+]

取消
微信二维码
微信二维码
支付宝二维码