Delphi程序设计试题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《Delphi 程序设计》试题及解答
一、填空题(20分,每空2分)
1、结构化程序设计要求程序中仅采用顺序、分支和循环三种控制结构,其中每种结构只能有一个入口和一个出口。
2、现实世界中对象具有自己的状态和行为。与此相对应,面向对象技术中的对象可以具有自己的属性和方法。
3、Delphi 的一个项目由若干文件组成,其中与窗体文件对应的文件是单元文件。
4、在设计阶段,ListBox 对象列表框中的内容是通过 Items 属性来进行设置的。
5、调用主窗体的Close 方法,可以结束程序。
6、如果要在窗体上设计一个主菜单,首先要建立MainMenu 对象。
7、当Query 对象中存储一条Delete 语句时,执行该语句需要调用Query 的ExecSQL 方法。
8、与数学表达式 53)(cos 2++x
b a 对应的Object Pascal 表达式是 sqr(cos(a+b)) /(3*x)+5 或 cos(a+b) * cos(a+b) /(3*x)+5
9、通过Animate 对象的CommonA VI 属性设置,可以指定系统标准的A VI 动画演示。
10、利用Canvas 对象的LineTo 等方法,可以绘制基本图形。
二、单项选择题(20分,每题2分)
1、下面哪句话比较准确地定义了Delphi ( A )。
A .面向对象的可视化的开发环境
B .多媒体制作工具
C .数据库的客户端开发工具
D .高级编程语言
2、下面哪个功能键可以调出Delphi 的联机帮助信息(A )
A .F1键
B .F2键
C .F3键
D .F4键
3、“x 是小于10的非负数”的Object Pascal 表达式是( B )
A .0 ≤ x < 10
B . (x >=0) AND (x < 10)
C .x >= 0, x<10
D . (x >= 0 ) OR (x<10)
4、工具栏上的一组按钮如果要构成互斥关系(如“左对齐”、“居中”、“右对齐”),它们的GroupIndex 属性正确的设置是( C )
A .GroupIndex 属性值都为0
B .GroupIndex 属性值非0,且互不相同
C .GroupIndex 属性值非0,且相同
D .GroupIndex 属性值互不相同
5、利用Image 对象的哪个属性设置,可以使Image 对象的显示区域随着调入图像的大小自动调整以显示全图( B )
A .Stretch
B .AutoSize
C .Align
D .Center
6、现建立一个简单报表,仅包含报表标题栏、数据列标题栏和数据栏,则在Bands 属性的子属性中,不需要选择的是( D )
A .HasColumnHeader
B .Detail
C.Title D.Summary
7、在窗体上建立多页面,需要首先建立的对象是(B )
A.TabControl B.PageControl
C.HeaderControl D.PageScroller
8、既可以通过选择输入、又可以直接输入的数据感知控件是(C )
A.DBRadioGroup B.DBListBox
C.DBComboBox D.DBCheckBox
9、如果要求每当光标进入edit编辑框中时,编辑框都清空,可以在哪个事件处理程序中编写代码实现(D )
A.OnClick B.OnMouseMove
C.OnKeyPress D.OnEnter
10、下面哪个组件不是容器组件( D )
A.Form B.Panel
C.GroupBox D.Memo
三、判断题(10分,每题1分)
请给下列论述中正确的打上“√”,错误的打上“ ”
1、(V )在Delphi环境中,组件页上的组件是“类”而不是“对象”。
2、(V )按钮组件和编辑框组件能够响应的事件有些是相同的。
3、(X )在对文件的操作中,reset是建立并打开一个新文件。
4、(V )编辑框edit中的内容能够设置为只读(即不能输入)。
5、(X )OpenDialog组件的功能是指定一个文件名,并将文件内容加载到指定的编辑区中。
6、(V )在一个项目中,可以有多个窗体,但只能有一个主窗体。
7、(V )在Data Controls组件页上,有的数据控件没有datafield属性。
8、(X )在程序运行期间,一个Table对象只能固定和一个关系表相连。
9、(X )要想在数据集中增加计算字段,必须先将数据集的字段全部置为动态字段。
10、(v )在设计阶段,如果在Query对象的SQL语句中设置了参数,则必须在Query的Params属性中为参数设置数据类型。
四、程序填空题(40分,每题10分)
1、(10分,每空2分)
本程序由主窗体form1和子窗体form2组成,设计界面如下图所示:
主窗体上建立的对象有Image1、Button1(加载图片)、Button2(退出)、OpenDialog1。
子窗体上建立的对象有Label1、BitBtm1(Yes)、BitBtm2(No)。
单击“加载图片”按钮,会弹出打开文件对话框。用户指定一个图像文件后,图像加载到Image1显示区中。
单击“退出”按钮,会弹出确认对话框(Form2)。如果用户按“Yes”键,程序结束;如果按“No”键,返回主窗体。
下面是Unit1的代码部分,请在下划线处完成程序填空。
--------------------------------------------------------------------------------------------------------------------- implementation
{$R *.dfm}
uses
unit2 ;
procedure TForm1.Button1Click(Sender: TObject);
begin
if opendialog1.Execute then
Image1.Picture.LoadFromFile(opendialog1.FileName);
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
if form2.ShowModal = mrYes then
close;
end;
end.
--------------------------------------------------------------------------------------------------------------------- 2、(10分,每空2分)
数据库mydb中有关系表student,其结构如下:
student(sno学号,sname姓名,sex性别,birthday生日)
现编写一个学生信息浏览程序,设计界面和运行界面如下图所示。
在下划线处填写相应数据库组件的属性值:
Database1. DatabaseName : mydb
Table1. DatabaseName : mydb
Table1. TableName : student
Table1. Active : True
Datasource1.DataSet : opendialog1.Execute
DBNavigator1. DataSource : opendialog1.FileName
DBEdit2. DataSource : form2.ShowModal
DBEdit2. DataField : close