今天深入学习了数组,学习了二维数组的概念和使用方法。二维数组就像是一个表格,可以用来表示矩阵等数据结构。在理解二维数组的存储方式和访问元素的方法上花了一些时间,通过画图的方式,终于搞清楚了行和列的索引关系。二维数组可以看作是一个具有行和列的表格形式的数据结构。在 C 和 C++ 语言中,二维数组本质上是一个数组的数组。例 如,int arr[3][4]; 定义了一个二维数组,它可以被看作是有 3 行 4 列的表格,总共包含 3×4 = 12 个元素。二维数组中的每个元素都通过两个索引来访问,第一个索引表示行,第二个索引表示列。索引从 0 开始计数,所以对于上述定义的数组,有效的行索引是 0、1、2,有效的列索引是 0、1、2、3。初始化方式按行初始化:可以在定义二维数组时对其进行初始化,按行初始化是比较直观的方式。例如:cppint arr[2][3] = { {1, 2, 3}, {4, 5, 6}};这种方式明确地将第一行初始化为 1, 2, 3,第二行初始化为 4, 5, 6。顺序初始化:也可以按照元素在内存中的存储顺序进行初始化。对于二维数组,元素在内存中是按行存储的(即先存储第一行的所有元素,再存储第二行的元素,以此类推)。例如:练习了用二维数组来解决一些实际问题,比如矩阵的加法、乘法等。在实现矩阵乘法的程序时,遇到了不少困难,需要仔细考虑内层循环和外层循环的嵌套逻辑,以及如何正确地计算每个元素的值。还学习了如何将数组作为函数的参数传递,发现传递数组时,实际上传递的是数组的首地址,这一点和普通变量的传递有所不同。在函数中对数组进行修改,会直接影响到原始数组的值。今天的学习内容有些难度,但也让我对数组的理解更加深入了,感觉自己的编程能力又有了一点进步。