C语言二维数组例题解析与应用
二维数组在C语言中是一种常见的数据结构,它可以用来存储表格数据或矩阵。本文将通过几个例题来展示二维数组的声明、初始化、遍历以及一些常见操作。
一、二维数组的声明与初始化
在C语言中,二维数组可以看作是数组的数组。声明一个二维数组的基本语法如下:
int array[行数][列数];
初始化二维数组,可以逐个元素赋值,也可以使用初始化列表:
int array[3][4] = { {1, 2, 3, 4}, {5, 6, 7, 8}, {9, 10, 11, 12} };
二、二维数组的基本操作
例题1:打印二维数组
编写一个程序,打印上述初始化的二维数组。
#includeint 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:计算二维数组中的最大值
编写一个程序,找出上述二维数组中的最大值。
#includeint 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:矩阵转置
编写一个程序,实现矩阵的转置操作。
#includeint 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:螺旋打印矩阵
编写一个程序,实现矩阵的螺旋打印。
#includevoid spiralPrint(int matrix[4][4], int rows, int cols) { int rowStart = 0, colStart = 0; while (rowStart < rows
版权声明:本页面内容旨在传播知识,为用户自行发布,若有侵权等问题请及时与本网联系,我们将第一时间处理。E-mail:284563525@qq.com