独家奉献——Delphi冲刺复习之填空题

技术与开发

填空题是笔试的第二部分试题,由于没有备选答案,是一个失分的大头。其中Delphi代码与组件应用又是最容易丢分的地方。想知道怎么在实战中避免丢分吗?

第1题:用于设置静态文本的水平方向上的对齐方式的属性是( )。

本题难度: ★★

涉及知识: 组件常用属性

名师解析:本题主要考核Delphi中组件的基本属性。此题中所考核的静态文本组件(TStaticText)类似于标签组件(TLabel),主要功能就是显示文本,而TStaticText通常用于ActiveX的特性页以显示某些状态信息。

对于文本类操作的组件而言,最基本的格式属性就是对齐方式,即Alignment属性,其功能是设置文本的水平方向上的对齐方式(taLeftJustify 左对齐、taRightJustify 右对齐、taCenter 居中)。在笔试中,组件常用属性是考试的一个必考点,可能考到的属性有:Alignment、AutoSize、Name、Height、Width等。

第2题:计时器事件之间的间隔通过( )属性来设置,时间间隔以( )为单位。

本题难度:★★

涉及知识:组件的属性与事件

名师解析:本题考核特定组件的属性及相关事件,此类题往往通过事件来考核重要组件的属性。考题中的计时器事件为定时器(Ttimer)组件的常用事件,当用户为它指定了一个时间间隔后,系统每隔一定的时间就会触发一次OnTimer事件,通过OnTimer事件定时处理某些应用操作。Ttimer组件有两个主要属性:Enabled——设置定时器是否有效;Interval——设置触发OnTimer事件的时间间隔,以ms为单位(注:当Interval=0时,表示禁用定时器)。

第3题:阅读下面的程序代码,循环结束后Edit1的值是( )。

procedure TForm1.FormClick(Sender: TObject);

var

s,i,j,k:integer;

begin

s:=0;

for i:=1 to 5 do

for j:=1 to 4 do

for k:=1 to 3 do

if j mod k=0 then

s:=succ(s);

edit1.Text:=inttostr(s);

end;

end.

本题难度:★★★★

涉及知识:控制语句执行

名师解析:本题考核对控制语句执行的掌握,其中还包括了常用函数应用。题中运用了for...to...do结构,嵌套一共有三层。特别要注意s:=succ(s);这条语句中succ( )为有序类型处理函数,即得到有序表达式值的后继数。例如succ(2)的结果是3,所以题中s:=succ(s)等同于s:=s+1。If语句的条件j mod k=0 ——表示当j能被k整除时,执行s:=succ(s)。所以,考生在解此题时,一定要仔细地计算每一次循环中k与j的变化所产生的s值变化(这也是循环嵌套的一大难点)。

第4题:要实现下图的功能,需要添加车辆记录按钮Button1,请补充下面的代码以实现其功能。

35-f12-2-1.jpg

Var

Stringtotal: integer;

Procedure TForm1.FormCreate(Sender: TObject);

Begin

StringGrid1.cells[0,0]:='姓名';

StringGrid1.cells[1,0]:='颜色';

RadioButton1.checked:=true;

StringTotal:=0;

End;

Procedure TForm1.Button1Click(Sendre: Tobject);

Begin

StringTotal:= StringTotal+1;

(  );

If (  ) then StringGrid1.cells( ):='白色';

If (  ) then StringGrid1.cells( ):='黑色';

End;

本题难度:★★★★★

涉及知识:字符串栅格组件

名师解析:本题主要考核常用组件中的字符串栅格组件(这是常用组件中的一个难点)。字符串栅格组件(TStringGrid)专用于显示字符串,通过一个二维数组Cells来进行栅格中单元格数据的访问。题中代码StringTotal指明当前单元格的列下标,所以将Edit1中的内容添加至栅格表中,StringGrid1.Cells[0,StringTotal]:=Edit1.Text(指定第0行的当前空白列添加内容)。

代码中的第二条if语句实现对选择按钮的判断,并添加对应的单元格数据,这里特别注意Cells数组的行与列的指定。很多考生往往注意了Delphi中数据表的添加等操作,忽视了字符串栅格组件的应用——这是一个很大的失分点。

填空题答案

第1题答案:Alignment

第2题答案:interval 毫秒

第3题答案:35

第4题答案:StringGrid1.Cells[0,StringTotal]:=Edit1.Text

RadioButton1.Checked=True

[1,StringTotal]

RadioButton1.Checked=True

[1,StringTotal]