版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第二章Delphi的语法基础项目9break、continue语句项目10一维数组项目11二维数组与记录类型的结合使用上一页项目1计算圆面积项目说明设计一个计算圆形面积的程序。程序设计界面如图2-1所示。程序运行时,在编辑框中输入圆的半径,单击“计算”按钮,得出该半径的圆的面积,如图2-2所示。返回下一页项目1计算圆面积项目分析1.窗体中的组件两个Edit组件,两个Label组件,一个Button组件对象属性列表,如表2-1所示。2.项目中的事件在Button1的单击事件中有三条语句,先将文本框的内容转化为实型数据,赋给变量r,然后通过计算得到圆面积赋给变量s,最后把s转化为字符串在Edit2中显示。项目实现返回上一页下一页项目1计算圆面积学习支持1.保留字与标识符(1)Delphi系统规定了很多具有特定意义的单词,在编写代码时不能对它们重新定义或另作他用,这些单词叫保留字,共有65个。具体如表2-2。(2)指令符也具有特殊的含义,与保留字类似。但是,当用户重新定义了指令符后,在作用域内它们就失去了原来的意义。不过为了防止混淆,最好与保留字一样不做其他用途。指令符有39个,如表2-3。返回上一页下一页项目1计算圆面积(3)标识符是Delphi应用程序中一些量的名称,这些量包括常量、变量、类型、过程、函数和对象等语法实体。在应用标识符时,必须首先说明它们。标识符又分标准标识符和自定义标识符。系统规定的标识符叫标准标识符,可以直接使用。用户或程序员定义的标识符叫自定义标识符。自定义标识符的名称由用户根据自己的意愿而定,但必须遵循如下的命名规则:●由字母、数字和下画线“_”组成。●以字母或下画线开头。●不能与保留字同名。●最好不与标准标识符同名。返回上一页下一页项目1计算圆面积2.注释为了增加程序的可读性,减轻程序的维护工作量,在程序中使用注释是一个良好的习惯。在ObjectPascal中,注释可以使用“{”和“}”或“(*”和“*)”将注释信息括起来,但必须成对出现。若仅注释一行,则在注释信息的开始处加上“//”即可。对于注释,Delphi的编译器在编译时将自动忽略掉。3.数据类型
ObjectPascal语言提供的数据类型非常丰富,如表2-4所示。在高级数据类型中,我们只简单介绍枚举型、子界型、集合类型和数组类型,其他的数据类型随着学习的不断深入就会了解到。返回上一页项目2求整数各位数字项目说明利用算术运算符和算术表达式编写一个程序,实现下面的功能:输入一个任意4位整数,计算千位、百位、十位和个位上的数字。程序设计界面如图2-3,程序运行界面如图2-4。程序运行时,输入任意整数,单击“个位数字”按钮,将显示个位数字,单击“十位数字”按钮,将显示十位数字,依此类推。项目分析1.窗体中添加的组件设置窗体和组件属性,如表2-10所示。返回下一页项目2求整数各位数字2.窗体中的事件四个按钮的单击事件。对于一个4位整数,要知晓如何求其各位数字。例如,对于1234这样一个整数,将它整除1000就得到千位上的数值1;将1234对1000取余得到234,再整除100即是百位上的数字2;将1234对100求余得到34,再对34整除10就得到十位上的数字3;1234对10取余即得到个位上的数字4。项目实现学习支持1.常量与变量(1)常量。程序运行过程中不能发生变化的值,称之为常量。返回上一页下一页项目2求整数各位数字(2)变量。变量用于存储在程序运行过程中不断发生变化的值。所有的变量必须先定义后使用。声明变量的语法格式:返回上一页下一页项目2求整数各位数字2.运算符与表达式(1)算术运算符。Delphi支持的算术运算符见表2-11。(2)关系运算符。关系运算符用来比较两个数据,其运算结果为布尔型值。Delphi支持的关系运算符见表2-12。(3)字符串运算符和字符串表达式。(4)逻辑运算符是对逻辑表达式进行运算的符号。(5)位运算符。我们知道,变量在内存中是使用一些位(bit)存储0或者1的。位运算符就是对位进行运算的符号。如表2-14。返回上一页项目3简单的函数计算器项目说明常用的计算器能求很多种函数的值,用户也可以编写一个程序计算某些函数的值。程序的设计界面如图2-5,程序运行时输入自变量x,单击“Sin(x)”、“Tan(x)”、“Sqr(x)”或“Lg(x)”按钮,将分别计算出x的相应函数值,并显示在函数值后面的编辑框中。程序运行界面如图2-6。项目分析1.窗体中的组件窗体中需要添加的组件及属性如表2-15。2.项目中的事件四个按钮的单击事件,分别用于进行函数计算。返回下一页项目3简单的函数计算器项目实现学习支持1.常用数值运算函数绝对值函数Abs(x):返回x的绝对值,参数x是整型或实型数据。取整数函数Int(x):返回x的整数部分,x为实型数据。取小数函数Frac(x):返回x的小数部分,x为实型数据。平方函数Sqr(x):返回x的平方值,x为实型数据。平方根函数Sqrt(x):返回x的算术平方根,x为非负实数。三角函数Sin(x)、Cos(x)、ArcTan(x):分别表示返回x的正弦函数值、余弦函数值、反正切函数值,x的单位为弧度。返回上一页下一页项目3简单的函数计算器指数函数Exp(x):返回值为e为实型数据。自然对数函数Ln(x):返回x的自然对数值,x为正实数。随机数函数Random(x):返回一个大于等于0小于x的随机整数,x为整数;若x默认,返回值为大于等于0小于1的实数。2.字符串处理函数(1)大小写转换函数:把字符串s中的字符全部转换为小写字母LowerCase(consts:String):String;(2)比较字符串大小函数:根据ASCII码值比较字符串大小。CompareStr(consts1,s2:String):Integer;CompareText(consts1,s2:String):Integer;(3)求字符串长度函数“Length(s):Integer;”:返回字符串的长度。返回上一页下一页项目3简单的函数计算器(4)查找位置函数“Pos(s1,s2:String):Integer;”;返回子字符串s1在字符串s2中首次出现的位置,若s2中不存在s1,则返回0。
(5)合并字符串过程“AppendStr(vars1:String;Consts2:String)”:返回值相当于执行语句“s1:=s1+s2;”(6)截取子字符串函数“Copy(s:String;m,n:Integer):String;”:在字符串s中截取从第m个字符开始长度为n的子字符串,并作为函数的返回值。若m大于s的长度,则返回一个空串;若从第m个字符到s的结尾不足n个字符,则返回其间的所有字符。
(7)删除子字符串过程“Delete(vars:String;m,n:Integer);”:在字符串s中删除从第m个字符开始长度为n的子字符串。
(8)插入子字符串过程“Insert(S1:String;vars:String;k:Integer);”:将字符串S1插入到字符串s中的第k个字符处。3.数值和字符串相互转换函数(见表2-16)返回上一页项目4改变文本格式项目说明设计一个程序,程序设计界面如图2-10所示。在程序设计时,编辑框显示“Hello,Delphi!”文字,字号为12号,字体为宋体,字体颜色为蓝色。程序运行时,单击“改变”按钮,编辑框文本内容不变,但字号改为15号,字体变为黑体,颜色变为绿色,如图2-11所示。项目分析1.窗体中的组件窗体中添加的组件及组件属性设置如表2-18。2.项目中的事件“改变”按钮的单击事件。返回下一页项目4改变文本格式项目实现学习支持语句的基本概念语句是控制程序运行和运算的关键。ObjectPascal中语句可以分成两大类:声明语句和执行语句。在ObjectPascal中,凡需在程序中使用到的标号、常量、变量、自定义类型、过程与函数等,都必须在指定的区域加以说明后方能使用。执行语句用来描述程序要执行的运算规则和程序执行的流程,从而达到完成某一指定功能或任务的目的。返回上一页下一页项目4改变文本格式(1)常见声明语句:声明语句包括标号声明语句以及过程与函数声明语句。过程与函数声明语句将在以后的章节中介绍。标号声明语句,在ObjectPascal中,可以使用一个整型常数(0~9999)或一个标识符来表示一个标号。标号用来标识程序中某个执行语句的起始地址,为Goto语句进行程序流程跳转之用。(2)赋值语句和程序的顺序结构:顺序结构就是语句是按照先后顺序依次执行的,程序执行的流程不会发生跳转,是程序设计中最常见最简单的程序结构。顺序结构语句主要是由赋值语句等操作语句组成的。在所有的程序设计中赋值语句是使用频率最高的语句之一。赋值语句的工作就是把一个值赋给一个属性或者变量。返回上一页项目5系统登录程序(if语句)项目说明利用if语句编写一个系统登录的简单程序,程序的设计界面如图2-12所示。程序实现的功能如下:在编辑框中输入密码,单击“确定”按钮,如果输入的密码正确(假定正确密码是“123456”),就在另一个编辑框显示“欢迎使用本系统”文本信息,文本的字号为15号,字体为隶书,字体颜色为蓝色,如图2-13。如果输入的密码不正确,就显示“密码错!”文本信息,文本字号还是15号,字体为楷体,字体颜色为红色,如图2-14。返回下一页项目5系统登录程序(if语句)项目分析1.窗体中的组件窗体中添加的组件及属性设置如表2-19所示。2.项目中的事件“确定”按钮的单击事件,用于验证密码是否正确。返回上一页下一页项目5系统登录程序(if语句)项目实现学习支持条件语句和程序的选择结构选择结构就是根据某个条件是否成立来判断是否执行相应的操作。选择结构可以分为单分支选择结构和多分支选择结构,分别对应单分支条件语句、双分支语句和多分支条件语句。(1)if语句的基本语法格式。返回上一页下一页项目5系统登录程序(if语句)
格式2:
if(条件)then
语句1else
语句2;(2)if语句可以嵌套使用,即语句中的语句1和语句2又是一个if语句。规定else与最近的if配对。返回上一页项目6计算折扣(case语句)项目说明某商场举办促销活动:凡购物消费在0~499元返现金5%,在500~999元的返现金10%,在1000~1999元的返现金15%,在2000元及以上的返现金20%。编写程序实现:根据输入的消费金额,计算出应该返多少现金。程序设计界面如图2-15所示,程序运行界面如图2-16所示。项目分析1.窗体中的组件本例的组件属性设置及组件功能如表2-20所示。返回下一页项目6计算折扣(case语句)2.项目中的事件“计算”按钮的单击事件。本例含有多种情况,用多分支语句case来实现比较方便。根据case语句的要求,表达式必须是顺序类型,因此本例必须根据收入构造出一个顺序型的表达式。通过分析可知,本例中返现金的转折点发生在500的整数倍处,为简化起见,可以这样做:假定消费金额为t,首先计算k的值,计算公式为:k:=(tdiv500);当k的值为0时,返现金的比例是5%;当k等于1时,返现金的比例是10%,其他依此类推。因此可用k作为case语句中的表达式。项目实现返回上一页下一页项目6计算折扣(case语句)学习支持case语句case语句的基本语法格式:返回上一页项目7求2+3+…+50的和(while语句)项目说明利用while语句求2+3+…+50的和。程序设计界面如图2-17,程序运行界面如图2-18所示。项目分析1.窗体中的组件本例的组件及属性设置如表2-21所示。返回下一页项目7求2+3+…+50的和(while语句)2.窗体中的事件“计算”按钮的单击事件。求2+3+…+50的和就是不断地重复做两个数的加法,因此可以用循环语句来实现。对于循环语句,一定要保证循环条件的正确,因为循环条件决定了循环的次数。本例中的循环条件就是加数是否小于或等于50。假设累加和为s,加数为k,那么使用表达式“s:=s+k;”即可实现加法,k的初值应为2,同时每做一次加法,还应该使k加1,即“k:=k+1;”。项目实现返回上一页下一页项目7求2+3+…+50的和(while语句)学习支持循环语句和程序的循环结构循环结构根据指定的条件执行某一程序段,直到满足条件退出循环。重复执行的程序段成为循环体。Delphi7实现循环结构的语句分为三种:while语句、repeat语句和for语句。
while语句是用在循环次数未知的情况。返回上一页项目8求2+3+…+50的和(for语句)项目说明用for语句实现上例的功能,程序设计界面和程序运行界面仍然如图2-17和图2-18所示。项目分析对于for语句,必须准确地知道循环变量的初值和终值,本例中,循环变量是加数,其初值应该是2,终值是50。项目实现学习支持for语句for语句用在循环次数已知的情况。返回下一页项目8求2+3+…+50的和(for语句)(1)语法格式:(2)该语句执行过程:将初值赋给循环变量将它与终值进行比较,当循环变量值不大于或不小于终值时,就执行一次循环体;否则循环结束,程序转到⑤处执行。将循环变量值加1或减1。程序跳转到②处继续执行。继续执行for语句的后续语句。返回上一页下一页项目8求2+3+…+50的和(for语句)(3)使用for语句时应该注意:不能在循环体中通过赋值语句给循环变量赋值,否则将产生编译错误。
for语句也可以嵌套,但每个for语句应使用不同的循环变量。返回上一页项目9break、continue语句项目说明本项目是求在两个数之间不能被4整除的数。在两个编辑框中任意输入两个正整数,求它们之间所有不能被4整除的数,并显示出来。程序设计界面如图2-19所示,程序运行界面如图2-20所示。项目分析1.窗体中的组件窗体中添加的组件及属性和功能如表2-22所示。返回下一页项目9break、continue语句2.项目中的事件“统计”按钮单击事件。在这个事件中,可通过if语句来判断某数是否能够被4整除,使用的关系表达式为“kmod4=0”。通过一个循环依次判断两个数之间的每一个数是否能够被4整除,如果能被4整除就结束本次循环,重新开始下一次循环,以便判断下一个数是否能被4整除。结束本次循环应使用continue语句而不是break语句。项目实现返回上一页下一页项目9break、continue语句学习支持
break与continue语句
break与continue语句用在循环语句的循环体中,用于控制循环的执行流程。break语句用于立即终止循环的执行,程序跳转到该循环的后续语句继续执行下面的内容。continue语句用于跳出本次循环,继续执行下一轮循环。返回上一页项目10一维数组项目说明产生10个100以内的随机数,计算出其中最大的数以及最大数的下标。程序设计界面如图2-21所示,程序运行界面如图2-22所示。本项目使用数组来存放这10个随机数。项目分析1.窗体中的组件组件设置及其作用如表2-23所示。项目实现返回下一页项目10一维数组学习支持数组类型数组类型是某种数据类型的有序组合,其中每一个元素的值由其相对位置来指定,可以在数组的某个位置上放置数据,并在需要时使用这些数据。因此用数组类型处理矢量、矩阵、线性表这样的结构是很方便的。数组按其维数分为一维数组,二维数组和多维数组。一维数组的定义格式如下:Type数组类型名=array[下标类型]of基类型返回上一页下一页项目10一维数组二维数组的定义格式如下:Type
数组类型名=array[下标类型1,下标类型2]of基类型或者Type
数组类型名=array[下标类型1]ofarray[下标类型2]of基类型返回上一页项目11二维数组与记录类型的结合使用项目说明某班有20名学生,在一次Delphi考试后,按Delphi成绩由大到小的顺序依次显示出学生的学号、姓名和Delphi成绩,编写程序实现该功能。程序设计界面如图2-25所示,单击按钮,程序界面如图2-26所示,单击“排列”按钮,按成绩由大到小顺序显示学生的学号、姓名和Delphi成绩,程序界面如图2-27所示。项目分析1.窗体中的组件窗体中添加的组件及属性设置如表2-25所示。返回下一页项目11二维数组与记录类型的结合使用2.项目中的事件(1)窗体初始化OnCreate事件:公共变量count初始化赋值。(2)“>>“按钮单击OnClick事件:把学生信息添加到listbox1组件中。(3)“排列”按钮单击
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 玉柴职业技术学院《生物医学专题》2026-2027学年第一学期期末试卷含解析
- 云南中医药大学《影视动作》2026-2027学年第一学期期末试卷含解析
- 四川音乐学院《轻化工环境保护》2026-2027学年第一学期期末试卷含解析
- 郑州澍青医学高等专科学校《药理学》2026-2027学年第一学期期末试卷含解析
- 天津交通职业学院《生理学中医方法论医学哲学》2026-2027学年第一学期期末试卷含解析
- 石家庄工商职业学院《学前儿童发展科学》2026-2027学年第一学期期末试卷含解析
- 苏州工艺美术职业技术学院《临床微生物学与检验技术》2026-2027学年第一学期期末试卷含解析
- 中国石油大学(北京)《智慧物流设施与设备》2026-2027学年第一学期期末试卷含解析
- 2026年城市停车场高精地图标注规范
- 2026银行ai面试题及答案解析
- 2025年生殖医学(副高)高级职称考试题库及答案
- 护理安全护航:输血操作的规范与风险控制
- 火电厂技术监督工作制度
- DB35T 2290-2026 非物质文化遗产 福州茉莉花茶窨制工艺
- 民典法教师考勤奖惩制度
- 2026年哈三中高三下学期第一次模拟考试数学试卷和答案
- 2026江西赣州市章贡区社区工作者(专职网格员)招聘102人参考考试试题及答案解析
- 石油化工工程数字化交付标准
- 悼念亲人的追思词写作技巧与范例
- 技术部周总结
- 深度解析(2026)《NBT 10096-2018电力建设工程施工安全管理导则》
评论
0/150
提交评论