C语言第6章2、二维数组.ppt

上传人:tia****nde 文档编号:6407519 上传时间:2020-02-24 格式:PPT 页数:28 大小:936.50KB
返回 下载 相关 举报
C语言第6章2、二维数组.ppt_第1页
第1页 / 共28页
C语言第6章2、二维数组.ppt_第2页
第2页 / 共28页
C语言第6章2、二维数组.ppt_第3页
第3页 / 共28页
点击查看更多>>
资源描述
1 1 构造数据类型 第六章 2 2 主要内容 数组概述一维数组二维数组字符数组结构体类型 3 3 二维数组 一 二维数组的定义二 二维数组的引用三 二维数组的初始化四 二维数组元素在内存中的排列顺序五 应用举例 4 4 一 二维数组的定义 格式 数组类型名数组名 数组元素个数 数组元素个数 例 floata 5 4 intb 5 6 charstr 30 20 二维实数数组 5行 4列 二维整数数组 5行 6列 二维字符数组 30行 20列 第一维 第二维 5 5 floata 5 4 列 行 二维实数数组 5行 4列 矩阵A 0 1 2 3 4 0 1 2 3 6 6 二维数组在内存中的存放过程 floata 5 4 1 002 003 004 00 5 006 007 008 00 9 0010 011 012 0 13 014 015 016 0 17 018 019 020 0 1 00 2 00 3 00 4 00 5 00 6 00 18 0 19 0 20 0 7 7 charstr 30 20 在内存中的存放过程 Marry Harry Philip Bush Linda 0 1 2 3 4 0 1 3 4 2 8 8 二 数组的引用 格式 数组名 行下标 列下标 例 b 3 2 b数组第4行第3列的元素 a i j a数组第i 1行第j 1列的元素 注意 数组的下标从0开始计数 9 9 对数组的操作是通过对每个数组元素的处理来实现的 二维数组的输入intb 3 2 printf pleaseenterthedata n for i 0 i 3 i for j 0 j 2 j scanf d 内循环 外循环 每一个数组元素 怎样输入数据 能保证输入正确 程序中语句的写法计算机处理读入数据的方法 for i 0 i 3 i for j 0 j 2 j scanf d b 0 0 b 0 1 b 1 0 b 1 1 b 2 0 b 2 1 1 b 0 0 intb 3 2 for i 0 i 2 i for j 0 j 3 j scanf d 如果 输入程序如下所示 那么 输入的数组元素的顺序如何 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 12 输出数组 intb 3 2 for i 0 i 3 i for j 0 j 2 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 6 0 b 1 0 9 0 b 1 1 10 0 13 13 如果输出程序改为 intb 3 2 for i 0 i 2 i for j 0 j 3 j printf b d d d t j i b j i printf n b 0 0 1 0b 0 1 2 0b 0 2 5 0b 1 0 6 0b 1 1 9 0b 1 2 10 0 输出结果形式如何 四 二维数组的初始化 分行赋初值inta 2 3 1 2 3 4 5 6 a 第一行 第二行 15 四 二维数组的初始化 不分行赋初值intb 2 3 1 2 3 4 5 6 16 16 对部分元素赋初值intc 2 4 0 2 3 未赋值的元素自动赋值0 而且前面的0不能省 后面的0可以省 对全部元素赋初值 省略第一维的长度inta 2 1 2 3 4 第一维的长度由初始化状态决定 本例为 2行 四 二维数组的初始化 17 17 二维数组 定义 数组元素的类型 数组变量名称 数组的维数 每一维数组元素的个数 引用 数组型变量必须先定义 后使用 只能逐个引用数组元素 不能直接引用整个数组型变量 数组下标从0开始 用二维数组编程时 可以这样思考 在存储器中有一片连续的内存区 名称为a 它对应一个m行n列的矩阵 将需要处理的一组数据 依次放入这片连续内存区的每一个单元中 对应的名称分别为 a 0 0 a 0 1 a 0 2 a 0 n 1 根据问题的需要 对这组数据中的每一个数据元素进行相应的处理 处理时的访问方式为 a i j 即 数组a中行下标为i列下标为j的位置处的数组元素 a 1 0 a 1 1 a 1 2 a 1 n 1 a m 1 0 a m 1 1 a m 1 2 a m 1 n 1 19 19 二维数组 一 二维数组的定义二 二维数组的引用三 二维数组的初始化四 二维数组元素在内存中的排列顺序五 应用举例 20 20 定义三个二维数组 a 3 4 b 3 4 c 3 4 for i 0 i 3 i for j 0 j 4 j scanf d 输入b矩阵的元素值 for i 0 i 3 i for j 0 j 4 j scanf d 输入a矩阵的元素值 1 求两个3 4矩阵的和 21 21 计算c矩阵的元素值 输出矩阵a b c for i 0 i 3 i for j 0 j 4 j c i j a i j b i j for i 0 i 3 i for j 0 j 4 j printf 6d a i j printf n 1 求两个3 4矩阵的和 for i 0 i 3 i for j 0 j 4 j printf 6d b i j printf n for i 0 i 3 i for j 0 j 4 j printf 6d c i j printf n 22 23 24 24 2 将一个4 3的矩阵转置 1 定义两个二维数组 a 4 3 b 3 4 for i 0 i 4 i for j 0 j 3 j scanf d 2 输入a矩阵的元素值 25 25 2 将一个4 3的矩阵转置 4 输出矩阵a b for i 0 i 3 i for j 0 j 4 j printf 6d b i j printf n for i 0 i 4 i for j 0 j 3 j b j i a i j 3 计算a矩阵的转置 第二题 编程 求一个3 3的整型矩阵的对角线元素的和 要求 1 使用二维数组 数组元素由键盘输入 2 以3 3的格式输出矩阵里的数据 3 最后输出对角线元素之和 参考 28 待续
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!