第4章结构化数据.pptx

  1. 1、本文档共45页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第4章结构化数据.pptx

《计算基础——C++语言实现》 计算机的主要作用是对数据进行分析和处理。当数据中含有多条记录或多个属性时,如何将数据有效地存储在计算机中以方便后继的分析和处理,是利用计算机解决实际问题时要考虑的一个重要内容。本章重点介绍多记录数据和多属性数据的存储结构,以及如何使用C++实现这些数据的存储和处理。通过本章的学习,读者一方面能够根据自己的问题,判断出应该采用哪种数据结构;另一方面能够使用C++提供的相应语句,编写程序解决问题。本章还介绍枚举,并给出一个应用程序实例,该实例涉及基本的排序算法的思想,给读者以启发,激发读者利用计算思维解决更多、更复杂的问题的兴趣。 第4章 结构化数据 2 在实际生活中,经常遇到对多条同一性质的记录进行处理和分析的情况,此时会涉及多记录数据的存储。例如,设甲班共有N名学生,要统计甲班某门课程考试中各个成绩范围的学生人数,其具体过程为: ① 提供原始数据,即N名学生的考试成绩。 ② 设定初始状态,即在查看学生成绩前将各个成绩范围的学生人数置为0。 ③ 开始统计分析,即依次查看每名学生成绩并根据成绩更新相应成绩范围的学生人数。 待处理的原始数据中包含了N名学生的成绩,此时就要首先解决这种多记录数据的存储问题。 4.1 多记录数据的存储 3 在有的问题中,不仅待处理的是多记录数据,而且处理结果也是多记录数据。例如,设乙班共有M名学生、期末考试共考核C门课程,要分别统计乙班每名学生在C门课程上的总成绩,其具体过程为: ① 提供原始数据,即M名学生在C门课程上的考试成绩。 ② 设定初始状态,即在查看学生成绩前分别将每名学生的总成绩置为0。 ③ 开始统计分析,即对每名学生依次将其在C门课程上的成绩加到其总成绩上。 待处理的原始数据中包含了M名学生在C门课程上的考试成绩(即共M×C个成绩),处理结果中包含了M名学生的总成绩,原始数据和处理结果中都涉及多记录数据的存储问题。 4.1 多记录数据的存储 4 根据数据自身的特性,可以将数据分为一维数据、二维数据、三维数据……本书重点介绍易于从直观上理解的一维数据和二维数据。 4.1.1 一维数据 一维数据是指数据元素的值由一个因素唯一确定。 4.1 多记录数据的存储 5 1. 一维数据问题实例 【例4-2】表4-2是各成绩级别所对应的成绩范围。设甲班共有N名学生,统计甲班某门课程考试中各成绩级别的学生人数。 问题求解思路: N名学生中每名学生的考试成绩由学生编号唯一确定,如图4-1所示。因此,待处理的原始数据是一维数据。解决该问题需要3步,其中第2步是第3章中所讲的迭代与选择的嵌套过程,根据学生成绩将相应成绩等级的学生人数增1。解决该问题的算法如表4-3所示。 4.1 多记录数据的存储 6 4.1 多记录数据的存储 7 2. 用C++提供的一维数组存储一维数据 对于一维数据的存储问题,C++提供了相应的一维数组,用户可以使用该数据结构存储待处理数据或处理结果,编写程序完成问题的求解。 (1) 一维数组的定义 数组本质上是一组变量,即数组的每一个元素都是一个变量。与前面学习过的简单变量一样,在使用数组之前,必须先给出数组的定义。一维数组的定义形式为: 数据类型 数组名[常量表达式]; 4.1 多记录数据的存储 8 数据类型指定了数组中每一个元素的类型,既可以是前面学习的int、float等基本数据类型,也可以是后面将要学习的指针、结构体、类等数据类型;数组名的命名规则与简单变量的命名规则相同;方括号中的常量表达式用来指明该数组中元素的数量,即数组的长度,它必须是整型常量、整型符号常量或枚举常量(关于枚举常量可参考4.3节)。 例如,如果要存储10名学生的成绩,就可以定义一个一维数组: int score[10]; 或 const int SIZE = 10; int score[SIZE]; 上面的语句定义了一个名为score的一维数组,该数组的长度为10,共包含10个int类型的元素,可以用来存储10名学生的成绩。 4.1 多记录数据的存储 9 (2) 一维数组的初始化 同简单变量一样,在定义数组的同时可以为数组中的各个元素赋初值。一维数组的初始化形式为: 数据类型 数组名[常量表达式]={初值1, 初值2, …, 初值N}; 例如,在上述定义存储10名学生成绩的数组的同时,可以为其进行初始化: int score[10]={97, 85, 68, 95, 99, 73, 86, 75, 62, 53}; 提示: score={97, 88, 68, 95, 99, 73, 86, 75, 62, 53};//错误:初始化列表只能在数组定义时使用 4.1 多

文档评论(0)

heroliuguan + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8073070133000003

1亿VIP精品文档

相关文档