




免费预览已结束,剩余18页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
11二维数组的定义和引用 11 1二维数组的定义 二维数组定义的一般形式为类型说明符数组名 常量表达式 常量表达式 例如 定义a为3 4 3行4列 的数组 b为5 10 5行10列 的数组 如下 floata 3 4 b 5 10 不能写成floata 3 4 b 5 10 11 1二维数组的定义 二维数组中的元素在内存中的排列顺序是 按行存放 即先顺序存放第一行的元素 再存放第二行的元素 一维数组在内存中的存放 下图表示对a 3 4 数组存放的顺序 地址值数组元素 b 0 0 b 0 1 b 0 2 b 1 0 b 1 1 b 1 2 b 2 0 b 2 1 b 2 2 3000H3002H3004H3006H3008H300AH300CH300EH3010H 例如 整型数组b 3 3 1 2 3 4 5 6 7 8 9 123 456 789 问题 有了二维数组的基础 那么多维数组如何定义呢 定义三维数组 floata 2 3 4 多维数组元素在内存中的排列顺序 第一维的下标变化最慢 最右边的下标变化最快 二维数组元素的表示形式为 数组名 下标 下标 例如 a 2 3 下标可以是整型表达式 如a 2 1 2 2 1 数组元素可以出现在表达式中 也可以被赋值 例如 b 1 2 a 2 3 2 常出现的错误有 inta 3 4 定义a为3 4的数组 a 3 4 3 在使用数组元素时 应该注意下标值应在已定义的数组大小的范围内 可以用下面4种方法对二维数组初始化 数据类型数组名 常量表达式1 常量表达式2 初始化数据 1 分行给二维数组赋初值 如 inta 3 4 1 2 3 4 5 6 7 8 9 10 11 12 2 可以将所有数据写在一个花括弧内 按数组排列的顺序对各元素赋初值 如 inta 3 4 1 2 3 4 5 6 7 8 9 10 11 12 11 3二维数组的引用 3 可以对部分元素赋初值 如 inta 3 4 1 5 9 100050009000 也可以对各行中的某一元素赋初值 如 inta 3 4 1 0 6 0 0 11 1000060000011 100056000000 也可以只对某几行元素赋初值 如 inta 3 4 1 5 6 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 在定义时也可以只对部分元素赋初值而省略第一维的长度 但应分行赋初值 如 inta 4 0 0 3 0 10 0030000001000 二维数组元素的输入与输出 1 输入inta 3 4 i j for i 0 i 3 i for j 0 j 4 j scanf d 2 输出for i 0 i 3 i for j 0 j 4 j printf 3d a i j printf n 例11 1将一个二维数组行和列元素互换 存到另一个二维数组中 includevoidmain inta 2 3 1 2 3 4 5 6 intb 3 2 i j printf arraya n for i 0 i 1 i for j 0 j 2 j printf 5d a i j b j i a i j printf n printf arrayb n for i 0 i 2 i for j 0 j 1 j printf 5d b i j printf n 程序结束 运行结果如下 arraya 123456arrayb 142536 例11 2求二维数组 对角线元素之和 includevoidmain inta 5 5 i j s 0 for i 0 i 5 i for j 0 j 5 j scanf d 例11 3 有一个3 4的矩阵 要求编程序求出其中值最大的那个元素的值 以及其所在的行号和列号 先用N S流程图表示算法 如下 程序如下 includevoidmain inti j row 0 colum 0 max inta 3 4 1 2 3 4 9 8 7 6 10 10 5 2 max a 0 0 for i 0 imax max a i j row i colum j printf max d row d colum d n max row colum 程序结束 说明 杨辉三角是一个下三角形式 它的第一列和对角线上的值都是1 其他的值为上一行前一列的数与上一行同一列的数之和如下形式 111121133114641151010511615201561 例11 4 利用二维数组 输出7行7列的杨辉三角 include stdio h main inta 7 7 i j for i 0 i 7 i a i 0 1 a i i 1 for i 2 i 7 i for j 1 j i j a i j a i 1 j 1 a i 1 j for i 0 i 7 i for j 0 j i j printf 3d a i j printf n 例11 5从键盘上输入9个整数 保存在二维数组中 按数组原来位置输出第一行和第一列的所有元素 分析 1 输入数组 2 输出数组时要考虑
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 卫生院基本公共卫生服务项目自查报告
- DB65T 4045-2017 气象虚拟化数据中心基础资源池建设技术规范
- 智慧+安全政务云数据中心整体解决方案
- 全息影像技术在市场中的应用
- 保健品市场趋势分析与预测
- 智能系统与人类关系-洞察及研究
- 住宅楼工程建设合同3篇
- 胡萝卜购买合同书4篇
- 防养老诈骗基础知识培训课件
- 品牌文化渗透方法-洞察及研究
- 双重上市公司“管理层讨论与分析”披露差异:剖析与弥合
- 集装箱货物高效清关代理服务合同范本
- 2025年结构上岗试题及答案
- 2025年中国电信招聘考试行政职业能力测试预测题集
- 静脉治疗知识培训课件
- 教科版小学五年级上册科学实验报告20篇
- 2025-2026秋季学年第一学期学生国旗下演讲稿(20周):第五周 76载荣光里我们茁壮成长-喜迎国庆
- 《机械制图(多学时)》中职全套教学课件
- 2024过敏性休克抢救指南(2024)课件干货分享
- 矿山开采设计用计算公式
- 2019版外研社高中英语选择性必修一单词默写表
评论
0/150
提交评论