试卷代号:2235 座位■ 中央广播电视大学2012一2013学年度第二学期“开放专科”期末考试 Delphi程序设计试题 2013年7月 题 号 一 二 三 四 五 总分 分 数 得 分 评卷人 一、单项选择题(30分,每题3分)】 l.下面哪句话对Delphi的描述是正确的( )。 A.只能用于数据库客户端开发的工具 B.Delphi的编程语言全部是面向过程的 C.Delphi的编程语言是Java D.面向对象的可视化的开发环境 2.结构化程序设计的基本原则或特特点不包括()。 A.多态性 B.自顶向下 C.模块化 D.逐步求精 3.表达式60+17div2的值是( )。 A.66 B.79 C.68 D.80 4.一个Delphi应用程序必有个( )文件和至少一个单元文件。 A.执行程序 B.项目 C.数据 D.图形 5.最适合于在工具栏上放置的工具按钮是( )。 A.Button B.RadioButton C.SpeedButton D.BitBtm 1168
试卷代号 2 2 3 座位号[[] 中央广播电视大学 3学年度第二学期"开放专科"期末考试 Delphi 序 设计 试题 2013 年7 |题号 - |分数 I I I I I I 得分|评卷人 -、单项选择题 0分,每题 3分} 1.下面哪句话对 el i的描述是正确的( )。 A. 数据库 B. Delphi 部是面 C. Delphi 程语 是Java D.面向对象的可视化的开发环境 2. 化程 设计 本原 或特特 )。 A. 多态性B. c.模块化D.逐步求精 3. div )。 A. 66 C. 68 B. 79 D. 80 )文件和至少一个单元文件。 B. D. 4. 个Delphi 必有 A. 程序 c.数据 5. 适合于在工具栏 按钮 A. Button c. SpeedButton B. RadioButton D. BitBtrn 1168
6.通常控制组件在窗体中的可见属性是( )。 A.Visible B.Name C.Showing D.Hint 7.现建立一个简单报表,要求其中要包含报表的汇总栏,则在Bands属性的子属性中,需 要选择的是()。 A.ColumnHeader B.Detail C.Title D.Summary 8.任何控件都有的属性是()。 A.BackColor B.Caption C.Name D.BorderStyle 9.数据库组件中,提供了对数据库读写操作功能的核心组件是( )。 A,数据源组件 B.用户界面组件 C.数据集组件 D.数据感知控件 1O.Delphi中可以实现绘制直线的方法是( )。 A.Polyline B.Ellipse C.Rect D.LineTo 得 分 评卷人 二、判断题(请给下列论述中正确的打上“√”,错误的打上“×”,10 分,每题2分) )11.函数int(2.718)=2.0计算是正确的。 ( )I2.Delphi是面向对象的可视化的开发环境,编程语言采用ObjectC。 )l3.所有的Delphi控件都有一个Name属性。 )14.((x>=5)OR(x<=-5)AND(xin[1..9])当x=10时,表达式的值为假(或 false))。 )15.在一个项目中,第一个建立的窗体固定就是主窗体,并且再也不设置其他窗体为主 窗体。 得 分 评卷人 三、填空题(20分,每空2分)】 16.结构化程序设计的基本原则是取消g0to语句,程序中仅采用顺序、 和循环 三种控制结构。 1169
6. 件在 可见 性是 )。 A. Visible B. Name C. Showing D. Hint 7. 现建 单报表 包含报 汇 总 在Bands 子属 要选择的是( )。 A. ColumnHeader B. Detail C. Title D. Summary 8. 控件 性是 )。 A. BackColor B. Caption C. Name D. BorderStyle 9. 据库读写 功 能 组件是 )。 A.数据源组件 .用户界面组件 C. 据集组件 D. 据感 10. Delphi 现绘 法是 )。 VJ+Lne ACPAROE'ZAP-w BDmLhunPAe30 |得分|评卷人| I I I 二、判断题{请给下列论述中正确的打上"....; " ,错误的打上 ", 分,每题 2分) ( )11.函数 t ( 718)=2. 算是正确 ( )12. Delphi 环境 用ObjectC ( )13. ( )14. ((x>=5)OR(x<=-5))AND(x in[l. . 9J) 达 式 false) ( )15. 第一 定就是主窗 并且 其他 窗体。 |得分 l评卷人| I -r--l 三、填空题 0分,每空 2分) 16. 结构化程 基本 是取 消goto 三种控制结构。 1169
17.一个对象是由属性、方法和事件所组成。属性表示对象中的数据, 是对象能 够执行的动作, 是能够引起对象反应的条件。 18.与数学表达式sin2x二对应的Object Pascal表达式是 sin(x2-y2) 19.ListBox对象列表框中的内容是通过 属性来进行设置的。 20.调用主窗体的 方法,可以结束程序关闭窗体。 21.如果让界面上的一个按钮在运行的时候变为不可见,需要将它的 属性 设为False。. 22.利用DBGrid的 属性,可以设置DBGrid每一列的标题和对齐方式等。 23.通过Animate对象的 属性设置,可以指定系统标准的AVI动 画演示。 24.在Delphi集成开发环境中,如果想要直接设置或者修改对象的属性,可以通过对象查 看器(Object Inspector)中的 窗口直接进行设置。 得 分 评卷人 四、程序填空题(30分,每题10分) 25.(10分,每空2分) 应用程序的用户界面如下图所示: Form 张晓林 张晓林 女 中文 所天 劃敦授 中文 教授 副教授 讲师 功能说明: 该界面是一个教师信息录入界面。 1170
17. 个对 方法 所组成 性表 对象 够执行的动作,是能够引起对象反应的条件。 in2 (x-y) 18. 数学 式sin(x2 _y2 的Object Pascal 表达式是 19. Li 对象 表框 通过 来进 设置 20. 用主 结束程 1. 如果让 钮在 不可 需要 设为 是对象能 属性 22. 23. 过Animate 属性,可以设置 d每一列的标题和对齐方式等。 属性设置,可以指定系统标准的 AVI动 画演示。 24. 集成 发环 如果想要直 设置或者 的属 对象 看器 e c Inspector) 接进行设 |得分 l评卷人| I / I 四、程序填空题 0分,每题 0分) 25. (1 应用程序的用户界面如下图所示: 功能说明: 该界面是一个教师信息录入界面。 1170
用户在编辑框(Editl)中输人姓名,利用单选按钮(RadioGroupl)指定性别,利用组合框 (ComboBoxl)选择或直接输人所在系,利用列表框(ListBoxl)指定职称。当输人完上述信息 后,单击“确定”按钮,教师信息将显示在右边的Memol编辑窗口中。 下面是开发过程,请完成填空部分: 通过RadioGroupl的Items属性设置两个单选按钮(“男”和“女”"),并将属性① 设置为2(按钮摆两列)。 通过ComboBoxl的② 属性设置下拉选单中的系名。 通过ListBoxl的Items属性设置列表框中的职称列表。 “确定”按钮的单击事件处理程序如下: procedure TForm1.ButtonlClick(Sender:TObject); begin memol.Lines.Add(edit1.3 );//加人编辑框的内容 if radiogroupl.④ =0then//判断选择了哪个按钮 memol..Lines..Add('男) else memol.Lines.Add(女); memol..Lines..Add(comboboxl.Text);/加人系的文本 memol.Lines.Add(listbox1.5 [listboxl.itemindex]);/加人职称 end; 26.(10分,每空2分) 本程序由主窗体forml和子窗体form2组成,设计界面如下图所示: Forml 片Fom2 停 是杏返出 e 主窗体上建立的对象有Panell、Animatel、Buttonl(加载AVI文件)、Button2(退出)、 Button3(播放)、Button4(停止)和OpenDialog1。 1171
);11 =0 thenl 判断选择 个按 用户在编辑框 !)中输入姓名,利用单选按钮 o u )指定性别,利用组合框 (ComboBoxl) 入所 利用列 表框 ListBoxl)指定 职称 输入完上述信 后,单击"确定"按钮,教师信息将显示在右边的 l编辑窗口中。 下面是开发过程,请完成填空部分 通过 l的It s属性设置两个单选按钮("男"和"女勺,并将属性① 设置为 (按钮摆两列)。 通过 o乱的②属性设置下拉选单中的系名。 通过 l的 I t s属性设置列表框中的职称列表。 "确定"按钮的单击事件处理程序如下 procedure TForml. ButtonlClick(Sender: TObject); begin memol. Lines. Add(editl. if radiogroupl. memol. Lines. Add( else memol. Lines. Add(' ') ; memol. Lines. Add(comboboxl. Text);1 系 的 文本 memol. Lines. AddClistboxl. ( [listbox!. itemindex]) ;I 入职称 end; 26. (1 本程序由主窗体 l和子窗体 2组成,设计界面如下图所示: 主窗体上建立的对象有 el1、 1、 tt (加载 I文件)、 (退出)、 Button3( 播放 、Button4( 和OpenDialog1 1171
子窗体上建立的对象有Labell、BitBtm1(Yes)、BitBtm2(No)。 单击“加载AVI文件”按钮,会弹出打开文件对话框。用户指定一个,vi的文件后,动画 文件加载到Animatel显示区中。单击“播放”按钮可播放动画,单击“停止”按钮可停止播放。 单击“退出”按钮,会弹出确认对话框(Form2)。如果用户按“Yes”键,程序结束;如果按 “No”键,返回主窗体。 下面是Unit1的代码部分,请在下划线处完成程序填空。 implementation ($R*.dfm) uses ① procedure TForml.Button1Click(Sender:TObject),;/加载AVI文件 begin if② then animatel.FileName:=3 end; procedure TForm1.Button2Click(Sender:TObject);// begin 证④ =mrYes then close; end; procedure TForm1.Button3Click(Sender:TObject);// begin animatel.Play(1,animatel.FrameCount,0); end; procedure TForm1.Button4Click(Sender:TObject);// begin animatel.⑤ end; end. 1172
子窗体上建立的对象有 ll (Yes) 、BitBtm2(No) 单击"加载 I文件"按钮,会弹出打开文件对话框。用户指定一个. avi 文件加载到 l显示区中。单击"播放"按钮可播放动画,单击"停止"按钮可停止播放。 单击"退出"按钮,会弹出确认对话框 )。如果用户按 "键,程序结束;如果按 "No" 下面是 l的代码部分,请在下划线处完成程序填空。 implementation {$ dfm} uses procedure TForml. ButtonlClickCSender:TObject);//加载 I文件 begin if animatel. FileName: =③ then end; procedure TForml. Button2ClickCSender: TObject);//退出 begin if close; end; =mrYes then procedure TForml. Button3ClickCSender: TObject); / /播放 begin animate1. Play (l ,animate1. FrameCount ,O) ; end; procedure TForml. Button4Click(Sender:TObject) ;/ /停止 begin animate 1. end; end. 1172
27.(10分,每空2分) 本程序的功能是实现对dep表(系)一student表(学生)的主从查询。用户可以依次查询 系的记录,也可以通过指定系号,查找并定位到指定的记录。每当显示一个系的记录后,系统 自动显示该系的学生记录。设计界面和运行界面如下: Forml Form1 DBEditl Edit1 d01 指定系d01 DBEdit2 针算机系 DBEdit3 2934 Sno Snane Sex BirthdayDno 010002:吴成女1982-11-17d01 030002李林 女1984-3-5d01: 040001侯成文男 1985-1-21d01 在Forml上建立的主要对象及连接如下: Databasel--Tablel(与dep表相连)-DataSourcel-DBEdit1~DBEdit3 Databasel一Queryl一DataSource2-DBGrid1(显示学生信息) Editl.Buttonl(查找)、Button2(下一记录)、Button3(上一记录)等。 Queryl的SQL语句是: select from student where dno=:dno 下面是Unitl单元的代码实现部分,请完成程序填空。 implementation ($R*.dfm) procedure TForml.Button2 Click(Sender:TObject);//下一记录 begin tablel.① end; procedure TForml.Button3Cick(Sender:TObject);//上一记录 begin 1173
27. (1 本程序的功能是实现对 p表(系) -student 系的记录,也可以通过指定系号,查找并定位到指定的记录。每当显示一个系的记录后,系统 自动显示该系的学生记录。设计界面和运行界面如下 l上建立的主要对象及连接如下 Databasel 一Tablel 与dep - DataSourcel- DBEditl-DBEdit3 Databasel-Queryl-DataSource2- DBGrid1C 示学生 Editl. Buttonl 、Button2C下一 、Button3C上一 Queryl 的SQL select from student where dno= :dno 下面是 tl单元的代码实现部分,请完成程序填空。 implementation { $ dfm} procedure TForml. Button2ClickCSender: TObject);//下一记录 begin tablel. end; procedure TForml. Button3ClickCSender: TObject) ;//上一记录 begin 1173
tablel.② end; procedure TForml.ButtonlClick(Sender:TObject);// begin tablel.③ ('dno,editl.Text,[]); end; procedure TForm1.TablelAfterScroll(DataSet:TDataSet); begin query1.Close; query1.ParamByName('dno).Value:=4 query1.⑤ end; end. 得 分 评卷人 五、编程题(10分)】 28.某俱乐部拟对注册会员实施收费,每位会员按整月每月收费500元整。但是对注册 时期较长的会员有价格优惠。规则如下:注册6个月以下(含6个月)每月收费金额不变,6至 12个月实行9折收费,12个月以上(不含12个月)7折收费。编程在“注册月数”框中输人会 员欲注册的月数,单击“计算”按钮后在“应收金额”框中显示应收会费总钱数。单击“结束”按 钮结束程序。 本程序设计界面及运行界面如下: 织东部收数程序 意酒区 俱乐部收裁程序 地☒ 注册月数 应收金额 注册月数 应收金额 Edit1 月X500= Edit2 4 月X500= 2000 Button1 Button2 计氧 结束 1174
table l. end; procedure TForml. ButtonlClick(Sender: TObject);//查找 begin table1. end; ('dno',editl. Text ,[ ] ) ; procedure TForml. TablelAfterScroll(DataSet: TDataSet); begin queryl. Close; queryl. ParamByNameC'dno'). Value: =④ queryl. end; end. 五、编程题(1 28. 部拟 册会 费500 时期较长的会员有价格优惠。规则如下:注册6个月以下(含6个月)每月收费金额不变, 12 行9 ,12 含12 月)7 程在 入会 员欲注册的月数,单击"计算"按钮后在"应收金额"框中显示应收会费总钱数。单击"结束"按 钮结束程序。 本程序设计界面及运行界面如下: 1174
7乐部收我程。回区 7供乐部致我程序 巴色区 注册月数 应收金额 注册月数 应收金额 10 月×500= 4500 20 月X500= 8000 计 结束 计 结束 请编写单击“计算”(Buttonl)按钮的事件处理程序。 procedure TForml.Button1Click(Sender:TObject); begin end; procedure TForm1.Button2Click(Sender:TObject); begin Close; end; 1175
请编写单击"计算 t ton l) 按钮 理程 procedure TForml. ButtonlC1ick(Sender: TObject); begin end; procedure TForml. Button2Click(Sender: TObject) ; begin Close; end; 1175
试卷代号:2235 中央广播电视大学2012一2013学年度第二学期“开放专科”期末考试 Delphi程序设计试题答案及评分标准 (供参考) 2013年7月 一、单项选择题(30分,每题3分) 1.D 2.A 3.C 4.B 5.C 6.A 7.D 8.C 9.C 10.D 二、判断题(10分,每题2分) 11. 12.× 13./ 14./ 15.× 三、填空题(20分,每空2分) 16.分支 17.方法 事件 18.sqr(sin(x-y))/sin(sgr(x)-sqr(y)) 19.Items 20.Close 21.Visible 22.Columns 23.CommonAVI 24.属性或Properties 四、程序填空题(30分,每题10分) 25.(10分,每空2分) ①Column ②Items ③Text ④ItemIndex ⑤Items 1176
试卷代号 2 3 中央广播电视大学 2 0 3学年度第二学期"开放专科"期末考试 Delphi 设计 试 评分 (供参考〉 2013 年7 一、单项选择题 0分,每题 3分) 1. D 2. A 3. C 6. A 7. D 8. C 二、判断题(1 0分,每题 2分) 11. .J 12. X 13. .J 三、填空题 0分,每空 2分) 16. 17. 法 事件 18. sqr(sin( x- y» / sin(sqr(x) - sqr(y» 19. Items 20. Close 21. Visible 22. Columns 23. CommonAVI 24. 或Properties 四、程序填空题 0分,每题 0分) 25. (1 ( Colum n (Item s ( T ext ( Item Index (Item s 1176 4. B 9. C 14. .J 5. C 10. D 15. X
26.(10分,每空2分) ①unit2 2 opendialogl.Execute 3 opendialog1.FileName ④form2.ShowModal ⑤stop 27.(10分,每空2分) ①Next ②Prior ③Locate ④tablel[dno] ⑤Open 五、编程题(10分) 28.procedure TForm1.ButtonlClick(Sender:TObject); Var mon:Integer; Money:Real; begin mon:=StrToInt(edit1.Text); IF mon<=6 Then Money:=500 mon Else IF mon<=12 Then Money:=500 mon 0.9 Else Money:=500米mon*0.7; edit2.text:=FloatToStr(Money); end; 1177
26. (1 每空 ( unit2 ( opendialog l. Execute ( opendialogl. FileName ( form2. ShowModal ( stop 27. (1 ( Next ( Prior ( Locate ( tablel ['dno'] ( O pen 五、编程题 28. procedure TForml. ButtonlClick(Sender: TObject); Var mon: Integer; Money: Real; begin mon: =StrToInt(editl. Text); IF mon< = 6 Then Money: =500 铃mon Else IF mon<=12 Then Money: =500 头mon 9 Else Money: =500 蒋mon 铃0.7; edit2. text: =FloatToStr(Money); end; 1177