您好,欢迎访问三七文档
陈孝则我的队•一般形式:类型说明符数组名[常量表达式][常量表达式];例:floata[3][4];a为3行4列的数组floatb[5][10];b为5行10列的数组•二维数组可以理解为特殊的一维数组•floata[3][4];可理解为三个一维数组•相当于floata[0][4],a[1][4],a[2][4]•二维数组的元素在内存中的存放顺序:按行存放;(1行满了放2行)•(任意多维数组最右边的下标变化最快,第一维的下标变化最慢)。•二维数组的元素的表示形式为:数组名[下标][下标]例、floata[2][3];有6个元素,按如下方式引用各元素:a[0][0]、a[0][1]、a[0][2]、a[1][0]、a[1][1]、a[1][2]注意:数组floata[2][3]中无元素a[2][3]。(下标从0始)常出现的错误是:inta[3][4];┇a[3][4]=3;/*应为a[2][3]=3;*/严格区分定义数组时的和引用元素时的a[3][4]的区别。1、分行赋值:inta[3][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12}};1234567891011122、全部数据写在一个花括号内,按数组排列的顺序对各元素赋初值:inta[3][4]={1,2,3,4,5,6,7,8,9,10,11,12};易遗漏数据,不易检查错误。3、对部分元素赋初值:inta[3][4]={{1},{5},{9}};100050009000仅对a[0][0]、a[1][0]、a[2][0]赋值4、如果对全部元素赋初值,则第一维的长度可以不指定,但必须指定第二维的长度。inta[3][4]={1,2,3,4,5,6,7,8,9,10,11,12};与下面定义等价:inta[][4]={1,2,3,4,5,6,7,8,9,10,11,12};杨辉三角#includestdio.h#defineLEN9intmain(){inta[LEN][LEN];inti,j;for(i=0;iLEN;++i)//第i行for(j=0;j=i;++j)//第j列if(i==j||j==0)//数在对角线或者第一列a[i][j]=1;else//数字在中间a[i][j]=a[i-1][j-1]+a[i-1][j];//等于前一列的数和之前的数的和for(i=0;iLEN;++i){for(j=0;j=i;++j)//就j=i只输出对角线左边的数printf(%d\t,a[i][j]);printf(\n);}getchar();}trytry以下对二维数组a的正确说明是:A)chara[10][5];B)inta[2][3];C)intk=5,a[k][k-2];D)chara[4][3]={{“abc”},{“bcd”},{“cde”}};E)inta[3][4]={{1},{5},{9}};cxzcxzcxzcxz:我的队Thanks
本文标题:C语言二维数组
链接地址:https://www.777doc.com/doc-4414509 .html