Delphi第7章数组与记录类型概要
7.2.3 记录的变体部分 为了描述不确定一张履历表,在声明记录类型时就要用到记录的变体部分。带有变体部分的记录类型的声明格式为: Type 〈记录类型标识符〉=Record 〈域名表1〉:〈类型1〉; 〈域名表2〉:〈类型2〉; … 〈域名表n〉:〈类型n〉; Case 〈识别字段标识符〉:〈识别字段类型〉 Of 〈常量表1〉:〈字段列表1〉; 〈常量表2〉:〈字段列表2〉; … 〈常量表n〉:〈字段列表n〉; End ; * 【例7-4】结合数组类型和记录类型编写一个计算学生成绩的程序。 如程序所示 * 谢谢观看! * Delphi 第7章 数组与记录类型 数组是一些具有相同类型的元素按一定顺序组成的序列。数组中的每一个数据元素都可以通过数组名唯一一个索引号来存取,它们被顺序地安排在内存中的一段连续的存储区中。 7.1 数组及其应用 7.2 记录类型 * 7.1 数组及其应用 在Delphi 5/6版本中的Object Pascal引入了动态数组,数组的内存分配不再局限于静态的,可以采用动态方式为数组分配内存区。因此,数组可分为静态数组和动态数组两种类型。 * 7.1.1 静态数组 静态数组在程序初始化时必须分配内存单元,明确其固定的大小和元素的数据类型。 1. 一维静态数组 数组通常可分为一维、二维和多维数组,在Object Pascal中,定义一个一维数组类型,其声明格式为: Type 〈数组类型标识符〉=array[〈下标类型〉] of 〈基类型〉; * 7.1.1 静态数组 2. 二维静态数组 二维数组是指一个一维数组中的元素类型本身又是一个一维数组,其一般形式为; Type 〈数组标识符〉=Array[〈下标类型1〉] of Array[〈下标类型2〉] of 〈元素类型〉; 也可以把上述形式简写成下面的形式: Type 〈数组标识符〉=Array[〈下标类型1〉,〈下标类型2〉] of 〈元素类型〉; * 7.1.1 静态数组 3. 多维静态数组 多维静态数组的一般格式为: Type 〈数组类型标识符〉=array[〈下标类型1〉,〈下标类型2〉,…,〈下标类型n〉] of 〈基类型〉; Type Test1=array[1..10,1..10,1..30] of integer; Var Myarray:array[0..5,0..6,0..8] of real; * 7.1.1 静态数组 4. 使用静态数组的注意事项 (1) 零基准数组。 所谓零基准数组,就是下标从零开始的数组,例如:array [0..5] of char (2) 数组的整体赋值。 假设有两个数组array1和array2,其变量定义如下: * 7.1.1 静态数组 Var array1,array2:[1..10] of char; 如果要把array2中每一个元素的值相应赋值给array1中的元素,一般是使用For语句,例如: For I:=1To 10 Do array1[i]:=array2[i]; * 7.1.1 静态数组 (3) 把数组作为过程或函数的形参。 Procedure My Proc(var Array1:Array[1..10] of Integer); Began … End; 上述程序中,数组的定义和传递并在一起进行,并且Array1是作为变参传递的。另外,数组也可以作为函数的返回类型,而在Turbo Pascal 7.0是不允许的。 * 7.1.1 静态数组 (4) 开放式数组。 Object Pascal语言实现了开放式数组。 {定义两个长度不同的数组变量} Var X1:Array[1..10] of real; Var X2:Array[1..10] of real; {MyProc过程的定义,其形参是开放式数组} Procedure MyProc(X:Array of Real); Begin {过程体略} End; Begin MyProc(X1); MyProc(X2); End; * 【例7-1】利用数组求出任意10个数中的最大及最小值。 如程序所示 【例7-2】利用二维数组建立一个8×8的方阵,该矩阵对角线元素为8,其余元素为1,结果显示在列表组件ListBox1中。 如程序所示 * 7.1.2 动态数组 1. 一维动态数组 一维动态数组的声明格式为: Type 〈数组类型标识符〉=array of 〈基类型〉; 也可在变量声明中直接声明动态数组,其格式为: Var 〈变量名〉: array of 〈基类型〉; * 7.1.2 动态数组 2. 多维动态数组 Type 〈数组类型标识符〉
您可能关注的文档
- cx免疫调节概要.ppt
- CYP83B1研究进展概要.ppt
- CypherTagRVR1读卡器操作手册概要.doc
- c一章第二节免疫与计划免疫(共33张PPT)概要.ppt
- CYP450酶与药物相互作用2概要.ppt
- C语言while循环教案——钟智君2013180502概要.doc
- CRRT的临床应用(姬喜荣)概要.ppt
- C语言例题概要.doc
- C语言图形方式下的编程概要.ppt
- C语言习题及答案概要.doc
- 2026《面向多样性的隐私保护推荐方法概述》7800字.docx
- 2026《基于PLC的智能立体停车场的控制系统设计》7200字.docx
- 2026《太赫兹技术概述》4200字.docx
- 2026《分布式电力系统经济调度研究现状国内外文献综述》2800字.docx
- 2026《曲美家具集团股份有限公司成本管理存在的问题及对策》5600字.docx
- 2026《基于肌肉信号的人体运动研究国内外文献综述》3400字.doc
- 2026《基于城市林学植物配置问题研究》7200字.docx
- 2026《社区重点人群管理平台设计与实现》7900字.docx
- 2026《区县医院内网的设计与实施研究》6900字.doc
- 2026《静电除尘的原理及高频电源的优势综述》3100字.doc
最近下载
- 小数乘除法100道竖式计算题及答案.docx VIP
- 人教版初中初三九年级英语-名师教学课件-感叹句的用法.pptx VIP
- 青岛版五年级上册小数乘除法竖式计算题100道及答案.docx VIP
- 预应力混凝土管桩连接方法创新图文.pdf VIP
- 云南傣族民居.ppt VIP
- 2024届宜宾市长宁县小升初语文检测卷含答案.doc VIP
- 2025年度民主生活会个人对照检查发言材料 八篇.docx VIP
- 辩论英文课件教学课件.pptx VIP
- 酒店服务质量与员工满意度关系研究分析——以常州万达喜来登酒店为例 工商管理专业.doc VIP
- 小学必背古诗拼音版(2020年-2021年).pdf VIP
原创力文档

文档评论(0)