- 1、本文档共28页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C语言、二维数组.ppt
第二题:编程。求一个3*3的整型矩阵的对角线元素的和。 要求: (1)使用二维数组,数组元素由键盘输入; (2)以3*3的格式输出矩阵里的数据; (3)最后输出对角线元素之和。 13 31 29 31 29 31 29 * * * * 主要内容 数组概述 一维数组 二维数组 字符数组 结构体类型 * * 二维数组 一、二维数组的定义 二、二维数组的引用 三、二维数组的初始化 四、二维数组元素在内存中的排列顺序 五、应用举例 * * 一、二维数组的定义 格式: 数组类型名 数组名[数组元素个数] [数组元素个数] 例: float a[5] [4]; int b[5] [6]; char str[30][20]; 二维实数数组, 5行、4列 二维整数数组, 5行、6列 二维字符数组, 30行、20列 第一维 第二维 * * float a[5] [4]; 列 行 二维实数数组: 5行、4列 1.0 2.0 3.0 4.0 5.0 6.0 7.0 8.0 9.0 10.0 11.0 12.0 13.0 14.0 15.0 16.0 17.0 18.0 19.0 20.0 矩阵 A 0 1 2 3 4 0 1 2 3 * * 二维数组在内存中的存放过程:float a[5] [4]; 1.00 2.00 3.00 4.00 5.00 6.00 7.00 8.00 9.00 10.0 11.0 12.0 13.0 14.0 15.0 16.0 17.0 18.0 19.0 20.0 1.00 2.00 3.00 4.00 5.00 6.00 ... … 18.0 19.0 20.0 * * char str[30][20] 在内存中的存放过程: M a r r y H a r r y P h i l i p B u s h L i n d a 0 1 2 3 4 0 1 3 4 2 … * * 二、数组的引用 格式:数组名[行下标][列下标]; 例: b[3][2]:b 数组第 4 行第 3 列的元素; a[i][j] : a 数组第 i+1 行第 j+1 列的元素; 注意:数组的下标从 0 开始计数 * * 对数组的操作是通过对每个数组元素的处理来实现的: 二维数组的输入 int b[3][2]; printf(please enter the data:\n) for(i = 0;i3;i++) for(j = 0;j2;j++) scanf(%d, b[i][j]); 内循环 外循环 每一个数组元素 怎样输入数据, 能保证输入正确? 1.0 2.0 5.0 6.0 9.0 10.0 矩阵 b 程序中语句的写法 计算机处理读入数据的方法 for(i = 0;i3;i++) for(j = 0;j2;j++) scanf( %d, , b[i][j]); b[0][0], b[0][1], b[1][0], b[1][1], b[2][0], b[2][1] 1 b[0][0] int b[3][2]; for(i = 0;i2;i++) for(j = 0;j3;j++) scanf(%d, b[j][i]); 1.0 2.0 5.0 6.0 9.0 10.0 矩阵 b 如果, 输入程序如下所示: 那么, 输入的数组元素的顺序如何? 1.0 输入的数据应以怎样的顺序排列? 、b[1][0] 、b[2][0] 、b[0][1] 、b[1][1] 、b[2][1] 5.0 9.0 2.0 6.0 10.0 2 * 输出数组 int b[3][2]; for(i = 0;i3;i++) { for(j = 0;j2;j++) printf(b[%d][%d] = %d, i, j, b[i][j]); printf(\n); } 输出结果形式如何? b[0][0] = 1.0 b[0][1] = 2.0 b[1][0] = 5.0 b[1][1]
文档评论(0)