第七章 集合记录文件(pascal语言).ppt

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

第七章 集合和记录类型 第一节 集合类型 第二节 记录类型 第三节 文件操作 第一节 集合类型 集合类型的定义和变量的说明 集合的值 集合的运算 【上机练习】 第二节 记录类型 记录类型的定义 记录的嵌套 开域语句 * * 集合是由具有某些共同特征的元素构成的一个整体。在Pascal中,一个集合是由具有同一有序类型的一组数据元素所组成,这一有序类型称为该集合的基类型。 集合类型的一般形式为: set of 基类型; 说明: ①基类型可以是任意顺序类型, 而不能是实型或其它构造类型。同时,基类型的数据的序号不得超过255。 例如下列说明是合法的: type letters=set of A..Z; numbers=set of 0..9; s1=set of char; ss=(sun,mon,tue,wed,thu,fri,sat); s2=set of ss; ②与其它自定义类型一样, 可以将类型说明与变量说明合并在一起.如: type numbers=set of 0..9; var s:numbers; 与 var s:set of 0..9;等价。 集合的值是用“[”和“]”括起来,中间为用逗号隔开的若干个集合的元素。如: [] 空集 [1,2,3] [a,e,i,o,u] 都是集合。 说明: ①集合的值放在一对方括号中,各元素之间用逗号隔开。 ②在集合中可以没有任何元素,这样的集合称为空集。 ③在集合中,如果元素的值是连续的,则可用子界型的表示方法表示。 例如:   [1,2,3,4,5,7,8,9,10,15] 可以表示成: [1..5,7..10,15] ④集合的值与方括号内元素出现的次序无关。例如,[1,5,8 ]和[5,1,8]的值相等。 ⑤在集合中同一元素的重复出现对集合的值没有影响。例如,[1,8,5,1,8]与[1,5,8]的值相等。 ⑥每个元素可用基类型所允许的表达式来表示。如[1,1+2,4]、[ch]、[succ(ch)]。 ⒈赋值运算 只能通过赋值语句给集合变量赋值,不能通过读语句赋值,也不能通过write(或writeln)语句直接输出集合变量的值。 ⒉集合的并、交、差运算 可以对集合进行并、交、差三种运算,每种运算都只能有一个运算符、两个运算对象,所得结果仍为集合。三种运算符分别用“+”、“*”、“-”表示。注意它们与算术运算的区别。 ⒊集合的关系运算 集合可以进行相等或不相等、包含或被包含的关系运算,还能测试一个元素是否在集合中。所用的运算符分别是:=、<>、>=、<=、in 它们都是二目运算,且前4个运算符的运算对象都是相容的集合类型,最后一个运算符的右边为集合,左边为与集合基类型相同的表达式。 例7.1 设有如下说明:   type weekday=(sun,mon,tue,wed,thu,fri,sat); week=set of weekday; subnum=set of 1..50; 写出下列表达式的值: ⑴[sun,sat]+[sun,tue,fri] ⑵[sun,fri]*[mon,tue] ⑶[sun,sat]*[sun..sat] ⑷[sun]-[mon,tue] ⑸[mon]-[mon,tue] ⑹[sun..sat]-[mon,sun,sat] ⑺[1,2,3,5]=[1,5,3,2] ⑻[1,2,3,4][1..4] ⑼[1,2,3,5]=[1..3] ⑽[1..5]=[1..4] ⑾[1,2,3]=[1..3] ⑿ 2 in[1..10] 答: 表达式的值分别是: ⑴ [sun,sat,tue,fri] ⑵ [ ] ⑶ [sun,sat] ⑷ [sun] ⑸ [ ] ⑹ [tue..fri] ⑺ TRUE ⑻ FALSE ⑼ TRUE ⑽ FALSE ⑾ TRUE ⑿ TRUE 例7.3 调用随机函数产生10个互不相同的随机整数(0=x=40),放入集合中并一起输出(5个一行)。 program ex7_3; var a:set of 0..40;

文档评论(0)

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

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

1亿VIP精品文档

相关文档