(八)数组(2):二维数组&&多维数组
发布时间:2022-12-05 11:27:02 所属栏目:PHP教程 来源:
导读: 有了一维数组的基础,多维数组就很好学习了
首先给个例子
我是例子
假如你想对1~16的数字按这样顺序排列,而不是1,2,3,...,16,这就是一个二维数组
那么应该怎么创建呢?
首先给个例子
我是例子
假如你想对1~16的数字按这样顺序排列,而不是1,2,3,...,16,这就是一个二维数组
那么应该怎么创建呢?
|
有了一维数组的基础,多维数组就很好学习了 首先给个例子 我是例子 假如你想对1~16的数字按这样顺序排列,而不是1,2,3,...,16,这就是一个二维数组 那么应该怎么创建呢? 一维是 int stu[16]; //方括号里数字可以省略不写 那么二维就是 int stu[4][4]; //一般不省略 由于有空字符的存在(null),有几个数值[]里写几个就行 那么第一个方括号就代表横向的一个维度,也就是所谓的X轴 第二个就是纵向维度,即Y轴 但是C语言中的维度方向跟数学是不一样的,Y轴与数学正好相反 C语言轴的方向 X轴从左到右,Y轴从上到下 所以上面数字的排列刚好对应C语言的逻辑维度方向 那么该如何赋值与输出呢? 直接给某地赋值非常方便,比如我想给第一个赋值为1,那么只需 stu[0][0] = 1; 而顺序赋值,可以直接写成数组方式,比如 int stu[4][4] = {{1,2,3,4}, {5,6,7,8}, {9,10,11,12}, {13,14,15,16} }; 注意每组数据用{}括起,用,分开 如果输出整个数组,想想一维是用一个for循环输出的 那么二维只需两个for就行啦o(^▽^)o 参考代码: for(int i=0;i<4;i++) { for(int j=0;j<4;j++) { printf("%d,",stu[i][j]); } printf("\n"); } 两层for循环逻辑大概是这样的: 第一层i=0,j=0,然后进到了j的循环中,执行一遍printf,再次回到j循环(因为有大括号) 此时i=0,j=1,继续循环执行 当j=4时,内部循环不符合条件,跳出内部循环,输出一遍回车,然后进入外部循环,即i=1 然后内部循环重新执行四遍PHP多维数组,j=0,1,2,3,一直重复到i=4退出循环 结果 最基本的二维数组方法就是以上这些,其实多维数组也同二维数组,只不过多加了几个维度 创建时多打几层{},输出时多写几个for照样搞定 但是实际操作中很少用到三维以上的数组,这里给一个声明三维数组的例子: int stu[2][3][4]={{{1,2,3,4},{5,6,7,8},{9,10,11,12}},{{13,14,15,16},{17,18,19,20},{21,22,23,24}}}; 放张图片理解理解(?-ω-`) 好的那么本节课内容差不多到这里就结束了,喜欢的朋友点个赞,当然关注也行( ̄▽ ̄) 把二维数组源码摆出来,供大家学习(欣赏) #include int main() { int stu[4][4] = {{1,2,3,4}, {5,6,7,8}, {9,10,11,12}, {13,14,15,16} }; for(int i=0;i<4;i++) { for(int j=0;j<4;j++) { printf("%d,",stu[i][j]); } printf("\n"); } return 0; } (编辑:百客网 - 百科网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
站长推荐

