C语言第十二讲二维数组与字符数组解析课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《C语言第十二讲二维数组与字符数组解析课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 第十二 二维 数组 字符 解析 课件
- 资源描述:
-
1、第十二讲 二维数组和字符数组主讲:谢华成主讲:谢华成C语言程序设计网络信息与计算中心教研室教教 学学 目目 的的C语言程序设计网络信息与计算中心教研室第一部分 二维数组v 二维数组的定义、引用、初始化v 二维数组的元素在内存中按什么方式存放?v 求二维数组中元素的最大值和最小值v 二维数组的变换v 一维数组中相关算法在二维数组中的实现C语言程序设计网络信息与计算中心教研室将将1个个3*2的矩阵存入的矩阵存入1个个3*2的二维数组的二维数组中,找出最大值以及它的行下标和列下标,并中,找出最大值以及它的行下标和列下标,并输出该矩阵。输出该矩阵。7.2 找出矩阵中最大值所在的位置找出矩阵中最大值所在
2、的位置 7.2.1 程序解析7.2.2 二维数组的定义和引用7.2.3 二维数组的初始化7.2.4 使用二维数组编程7.2.1 程序解析程序解析求矩阵的最大值求矩阵的最大值【例 7-7】将1个3*2的矩阵存入1个3*2的二维数组中,找出最大值以及它的行下标和列下标,并输出该矩阵。row 记录最大值的行下标 col 最大值的列下标 arowcol 最大值例例7-7 源程序源程序main()int col,i,j,row;int a32;printf(“Enter 6 integers:n);for(i=0;i 3;i+)for(j=0;j 2;j+)scanf(%d,&aij);for(i=0;
3、i 3;i+)for(j=0;j 2;j+)printf(%4d,aij);printf(n);row=col=0;for(i=0;i 3;i+)for(j=0;j arowcol)row=i;col=j;printf(max=a%d%d=%dn,row,col,arowcol);Enter 6 integers:3 2 10 -96 -13 2 10 -96 -1max=a10=10C语言程序设计网络信息与计算中心教研室二维数组二维数组多维数组的空间想象二维数组:一个表格或一个平面矩阵一维数组:一列长表或一个向量多维数组:多维空间的一个数据列阵三维数组:三维空间的一个方阵C语言程序设计网络信
4、息与计算中心教研室7.2.2 二维数组的定义和引用二维数组的定义和引用1、定义类型名 数组名行长度列长度int a32;定义1个二维数组a,3行2列,6个元素int b510;定义1个二维数组a,5 行 10 列,50 个元素 C语言程序设计网络信息与计算中心教研室2、引用、引用先定义,后使用数组元素的引用:数组名行下标 列下标行下标和列下标:整型表达式行下标的取值范围是0,行长度-1列下标的取值范围是0,列长度-1int a32;3 行 2 列,6 个元素a00 a01 a10 a11 a20 a21 下标不要越界下标不要越界C语言程序设计网络信息与计算中心教研室二维数组在内存中的存放方式二
5、维数组在内存中的存放方式int a32;3 行 2 列,6 个元素表示1个3行2列的矩阵a00 a01 a10 a11 a20 a21 二维数组的元素在内二维数组的元素在内存中按行存中按行/列方式存放列方式存放a00a01a10a11a20a21 C语言程序设计网络信息与计算中心教研室7.2.3 二维数组的初始化二维数组的初始化1、分行赋初值int a33=1,2,3,4,5,6,7,8,9;static int b43=1,2,3,4,5;数组数组a1 2 3 4 5 67 8 9数组数组b1 2 30 0 04 5 00 0 02、顺序赋初值int a33=1,2,3,4,5,6,7,8,
6、9;static int b43=1,2,3,0,0,0,4,5;C语言程序设计网络信息与计算中心教研室省略行长度对全部元素都赋了初值,int a 3=1,2,3,4,5,6,7,8,9;或分行赋初值时,在初值表中列出了全部行static int b 3=1,2,3,4,5,建议不要省略数组数组a1 2 3 4 5 67 8 9数组b1 2 30 0 04 5 00 0 0C语言程序设计网络信息与计算中心教研室7.2.4 使用二维数组编程使用二维数组编程行下标和列下标分别做为循环变量,通过二重循环,遍历二维数组通常将行下标做为外循环的循环变量 列下标 内循环C语言程序设计网络信息与计算中心教研
7、室定义1个 3*2 的二维数组a,数组元素的值由下式给出,按矩阵的形式输出a。aij=i+j(0i2,0j1)例例7-8 生成一个矩阵并输出生成一个矩阵并输出 int a32;a00 a01 a10 a11 a20 a21 0 11 22 3C语言程序设计网络信息与计算中心教研室#include int main(void)int i,j;int a32;for(i=0;i 3;i+)for(j=0;j 2;j+)aij=i+j;for(i=0;i 3;i+)for(j=0;j 2;j+)printf(%4d,aij);printf(n);return 0;a00 a01 a10 a11 a2
8、0 a21 i=0 j=0i=0 j=1i=1 j=0i=1 j=1i=2 j=0i=2 j=1 例例7-8 源程序源程序0 11 22 3C语言程序设计网络信息与计算中心教研室矩阵与二维数组矩阵与二维数组int aNN;N是正整数aij:i、j的取值范围0,N-1用二维数组a表示N*N方阵时,对应关系:a00 a01 a02 主对角线 a10 a11 a12 上三角a20 a21 a22 下三角 付对角线i=ji=ji+j=N-1C语言程序设计网络信息与计算中心教研室例例7-9 方阵转置方阵转置 输入一个正整数输入一个正整数n(1n6),根据下式生成根据下式生成1个个n*n的方阵,的方阵,然
展开阅读全文