C语言课件二维数组_第1页
C语言课件二维数组_第2页
C语言课件二维数组_第3页
C语言课件二维数组_第4页
C语言课件二维数组_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、11 2D阵列的定义和参考、11.1 2D阵列的定义、2D阵列定义的一般格式是类型指示符阵列名称常数表示式常数表示式。例如,定义a为34(第3行第4列)的数组,定义b为510(第5行第10列)的数组。包括:float a34、b510;无法写入,float a3、4、b5、10。11.1二维数组的定义,二维数组的元素在内存中的排列顺序为:也就是说,第一行的元素从第一行的元素到第二行的元素,一维数组存储在内存中的顺序,下图显示了a34数组的存储顺序,地址值数组元素,b 00 b01 b10 b11 B12 b20 3000 h3002 h 3006h 3008h 3008h 300 ah 300

2、 ch 300 e h 30100 e h 30100,1 2 3,4 5 6,789,问题:如果有二维数组的基础,如何定义多维数组?三维阵列定义:float a234多维数组元素在内存中排列的顺序。第一个维度的下标变化最慢,最右下标变化最快。二维数组元素显示为:阵列名称下标范例:a23下标可以是整数表示式,例如a2-12*2-1。数组元素可以出现在表达式中,也可以指定值(例如,b12=a23/2)。经常发生的错误是ining/* a为34的阵列定义*/a34=3;使用阵列元素时,下标值必须在定义的阵列大小范围内。可以通过四种方式初始化二维阵列:数据类型数组名称常量表达式1常量表达式2初始化数

3、据。(1)点为二维数组分配初始值。例如:inta34=1,2,3,4,5,6,7,8,9,10,11,12;(2)将所有数据写入大括号内,并可以按数组顺序为每个元素指定初始值。例如:inta34=1,2,3,4,5,6,7,8,9,10,11,12;11.3二维数组的引用,(3)可以为某些元素指定初始值。例如:inta34=1,5,9;您可以为、1 0 5 0 900或每行中的元素指定初始值(例如inta34=1,0,6,0,0,11)。只能为、100006000011、10005 00000或某些元素指定初始值。例如:inta34=1,5,6;(4)如果为所有元素指定初始值,则定义数组时可以

4、不指定第一个维的长度,但不能节省第二个维的长度。例如:inta34=1,2,3,4,5,6,7,8,9,10,11,12;Inta4=1,2,3,4,5,6,7,8,9,10,11,12。定义时,可以仅为某些成员指定初始值,省略第一个维的长度,但初始值必须换行。(大卫亚设,Northern Exposure,定义)例如:inta4=0,0,0,3,0,10;0 0 3 0 0 0 0 10 0,二维阵列元素的输入和输出,1,输入int a34,I,j;for(I=0);i3;I)for(j=0;j4;J) scanf(%d,2,输出for(I=0;i3;I)for(j=0;j4;J) prin

5、tf(=,AIJ);printf(n);示例11.1将一个2D数组行和列元素交换并存储在另一个2D数组中。# includevoidmain () inta23=1,2,3,4,5,6;Int b32、I、j;Printf(阵列a :n);for(I=0);I=1;I)for(j=0;j=2;j)、printf(、AIJ);Bji=aijprintf(n);Printf(阵列b :n);for(I=0);I=2;I)for(j=0;j=1;J) printf(,bij);printf(n);/*退出程序*/,结果如下:array a 3360 1 2 3 4 5 6 array b 3360

6、1 4 2 5 3 6,范例11.2 2寻找二维阵列,对角元素总和,# include voidmain () inta55,I For(I=0;i5;I)for(j=0;j5;J) scanf(%d,示例11.具有34个矩阵,其中最大元素的值以及包含这些值的行号和列号需要编程。,首先,在N-S流程图中表示算法,如下所示:#include void main() int I,j,row=0,colum=0,maxInta34=1,2,3,4,9,8,7,6,-10,10,-5,2;Max=a00,for(I=0);IMAX)max=AIJ;row=I;colum=j;Printf(max=%d,row=%d,colum=%dn,max,row,colum);/*退出程序*/,说明:杨辉三角形的第一列和对角线的值均为1,其他值是上一行中的上一列数与上一行中的相同列数之和。1 1 1 1 1 2 1 1 3 1 4 1 6 5 10 5 10 5 1 6 1 5

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论