《高级数据类型》PPT课件.ppt
《《高级数据类型》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《高级数据类型》PPT课件.ppt(34页珍藏版)》请在三一办公上搜索。
1、第4章 高级数据类型,4.1 枚举类型4.1.1 枚举类型的定义与变量声明1.枚举类型的定义枚举类型使用一组有限的标识符来表示一组连续的整数常数,它的值是有限的。枚举类型的定义格式如下:type=(,);说明:(1)type是系统的保留字,表示定义高级数据类型的开始。,(2)表示该类型数据中的元素,圆括号中列出了该类型数据的所有取值,这些取值又称为枚举常量。(3)同一个枚举常量不允许重复出现在同一个枚举类型定义中,也不允许同时出现在不同的枚举类型定义中。2.枚举类型变量的声明 其声明的格式与其他类型变量的声明完全相同 例如:Var C:Color;该语句声明了一个枚举类型Color的变量C。枚
2、举类型的运算,1使用函数 Object Pascal为枚举类型定义了5个枚举函数,可以进行特殊的运算。说明:(1)枚举类型定义语句中列出的每一个枚举常量都对应一个唯一的序数(整数),称为枚举序数,在缺省情况下,列出的第一个枚举常量对应枚举系数0,以后依次为1、2、3。,(2)在定义枚举类型时,排在某枚举常量前一位的枚举常量称为该枚举常量的前趋值,后一位的称为后继值。第一个枚举常量没有前趋值,最末一个枚举常量没有后继值。(3)由于每个枚举常量都对应一个枚举系数,所以枚举常量的序数可以进行算术运算,结果类型为整型。但枚举常量之间不能直接进行算术运算,需要先转换为枚举序数。2.关系运算 由于每个枚举
3、常量对应一个唯一的序数,因此可以在枚举常量之间进行关系运算。如在上述定义中,sunsat的值为假(false)。,4.2 子界类型子界类型的定义子界类型的定义格式如下:type=.;说明:(1)表示子界类型的下界,即最小值,表示子界类型的上界,即最大值。子界的上下界必须属于相同的顺序类型,即它们应同时为整型、布尔型、字符型 或同一个枚举类型。(3)子界的上下界所属的数据类型即为子界的基类型,若子界的基类型为标准数据类型(整型,、布尔型、字符型),则子界的上、下界可以直接使用该类型常量,若子界的基类型为枚举类型,则必须先定义基类型(枚举类型),再定义子界类型。(4)子界的上界必须不小于下界。子界
4、类型变量的声明其声明格式与其他类型变量的声明完全相同,如下面的代码声明了一个上述子界类型month的变量ml和workday类型的变量wl:varml:month:wl:workday:,4.2.3 子界类型的运算子界类型所允许的运算与其基类型所允许的运算相同,如基类型为整型子界类型变量可以进行算术、关系等运算,而基类型为枚举类型的子界类型变量仅能进行关系运算。4.3 集合类型集合结构是指具有相同性质的对象的全体,构成集合的每个对象称为集合的元素。注意:(1)集合中的元素是互异的、无序的。(2)集合元素个数不能超过256个。(3)元素与集合的关系是“属于”或“不属于”,二者必取其一且仅取其一。
5、,4.3.1 集合类型的定义 其定义格式如下:type=set of;说明:(1)表示集合中各元素的类型,可以是字符型、布尔型、枚举型和子界等顺序类型,不能是整型、实型和其他的构造类型。(3)若为枚举类型或子界类型,则必须先定义该基类型,再定义集合类型。(4)一个集合最多只能有256 个元素。另外,只有有序的类型才能跟关键字set of.,集合变量的声明 其声明格式与其他类型变量的声明完全相同。变量集合的取值集合变量不同其他变量,它不是一个单独元素,而是一系列元素的一集合。集合变量的取值称为集合值,其一般表现形式如下:,如果集合类型的基类型有n个元素,则该集合类型变量的取值有2n个,包括一个空
6、集合()。集合类型的运算集合类型的数据可以进行3大类运算:一类是集合对集合的并、交、差运算,其结果为集合值;一类是集合的关系运算,其结果是,逻辑值;一类是元素对集合的“属于”运算,其结果也是逻辑值。,【例4.3】输入年份,判断该年是否闰年,并根据选择的月份来判断是什么季节和该月有多少天。(1)界面设计使用Button、Edit、Label和ComboBox框组件即可设计界面,如图所示。(2)属性设置,(3)程序设计/*闰年函数*/function leapyear(y:integer):string;begin if(y mod 4=0)and(y mod 1000)or(y mod 4=0)
7、then leapyear:=是 else leapyear:=不是;end;/*窗体创建事件*/procedure TForm1.FormCreate(Sender:TObject);/关键分析1var year,month,day:word;begin decodedate(date,year,month,day);edit1.Text:=inttostr(year);combobox1.Text:=inttostr(month);end;,/*季节函数*/function ji(m:word):string;type jijie=set of 1.12;var spring,summer
8、,autumn,winter:jijie;begin spring:=3,4,5;summer:=6,7,8;autumn:=9,10,11;winter:=12,1,2;if m in spring then ji:=春天;if m in summer then ji:=夏天;if m in autumn then ji:=秋天;if m in winter then ji:=冬天;end;,/*“判断”按钮Button1的OnClick事件*/procedure TForm1.Button1Click(Sender:TObject);var y,m,d:word;begin y:=strt
9、oint(edit1.Text);edit2.text:=format(%s,leapyear(y);m:=strtoint(combobox1.Text);edit3.text:=format(%s,jijie(m);if m=2 then if leapyear(y)=是 then d:=29 else d:=28;/关键分析2 if m in1,3,5,7,8,10,12then d:=31;if m in4,6,9,11 then d:=30;/关键分析3 edit4.text:=format(%d,d);end;,/*“清除”按钮Button2的OnClick事件*/procedur
10、e TForm1.Button2Click(Sender:TObject);begin edit2.text:=;edit3.text:=;edit4.text:=;end;/*编写编辑框Edit1的OnMouseMove事件*/procedure TForm1.Edit1MouseMove(Sender:TObject;Shift:TShiftState;X,Y:Integer);begin(sender as tedit).SetFocus;end;/*编写编辑框Edit1的OnKeyPress事件*/procedure TForm1.Edit1KeyPress(Sender:TObjec
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 高级数据类型 高级 数据类型 PPT 课件
链接地址:https://www.31ppt.com/p-5623677.html