有填空的答案是不正确的哦:

一.选择题

  1. 下列(b d )类型的变量不能作为for循环中的循环变量

A.字符

B. 枚举

C. 子界

D.实数

  1. 用于建立菜单项的下划线快捷方式的字符是(d c)

A.‘

B#

C&

D@

  1. 某函数如下

function getn(n,k : integer):integer;

var m:integer;

begin

repeat

m:=n mod 10;

n:=n div 10;

k:=k-1;

until k=0;

getn:=m;

end;

若调用语句x:=getn(5276,3)运行后x值为(b )

A7

B6

C5

D2

  1. 以下类型组件中不能用于输入文本的是(d )

A.tedit

B. tcombobox

C. tmaskedit

D.tlabel

5.etable组件有而tqu     组件没有的属性是(c b)

A.datasource

B.tablename

C.filtered

D.database

6.以下运算符中运算优先级最高的是(b e)

A.*

B.or

C.》=

D.div

E.—

7.已知a b c d是同类型的简单变量,而且已有互不相同的值,执行随后语句:b:=a;a:=c;d:=a; d:=b;后,其值相等的变量是(e a)

A.a c

B.a d

C.c b

D.b a

E.无法确定

8.为让控件显示弹出式提示框文字,需用到控件的(d c)属性

A.handle

B.visible

C.showllint

D.showing

9.用于异常处理的关键字不包括(c d)

A.try

B.except

C.finally

D.error

10.

11下列组件中不能取得焦点的是(b)

A.edit

B. label

C. button

D.combcbox

12.下列组件中是可视组件的是(d)

A.ttimer

B.topendialog

C.ttable

D.tlabel

E.timagelist

13.面向对象的语言必须支持的基本特征有(a)

1.抽象性2.封装性3继承性4多态性

A.1234

B.123

C.24

D.12

14.下面程序中循环执行次数为(c)

i:=1;

repeat

n:=i*i;

i:=i+1;

until n>1

A.0

B.1

C.2

D.3

15.一组件的left属性表明它的左边相对于(c b)的位置

A.自身

B.父对象

C.windows窗体

D.form

16.delphi中赋值符号是(c)

A.=

B.= =

C.:=

D.=:

17.下列(a)文件可以在delphi的工程开发过程中删除

A..dcu

B..dpr

C..dfm

D..pas

18.要在菜单选项中出现水平分隔符,是将菜单项的caption属性设置为(a)

A.—

B.=

C.···

D.&

19.delphi允许一行多条语句,每条语句(除最后一句外)以(a c)结尾

A.分号

B.点好

C.逗号

D.空格

20.tedit组件的显示内容的存在于它的(b)属性中

A.caption

B.text

C.name

D.hint

21.form1上有一个panel1,当前选中panel1,当双击组件面板的button时,则该组件的位置是在(c a)

A.panel的中央

B.form的中央

Cpanel的左上角

Dform的左上角

22.下面操作会引发异常的是(d)

A除数为零

B打开不存在的txt文件

C数组下标越界

D其他三项都是

23tquery要执行的sql语句存放在(b)属性中

Adatabasename

Bsql

Cdatasource

Dtablename

24delphi中同一窗体上区别各个组件的唯一属性是(d)

Atag

Bcaption

Ctext

Dname

25连续放置一组button组件的操作是先按住(b)键,再点击button组件

Aalt

Bshift

Ctab

Dctrl

二判断题

1对于tcom。。。。。。。用户既可以选择列表项,又可以手动输入数据(t)

2label标签中的为本可以换行(t)

3tsqlquery的execsql用于运行返回一个结果集的查询(f)

4tquery所返回的结果集默认是不可以修改的(t)

5object inspector(对象监视器)显示被选组件的所有属性(t f )

二.填空题

1num_count函数返回字符串s中出现数字字符的个数。请在括号内天上恰当的内容

Function num_count (       s    s:string   ):integer

Var

Len_s,l,n_cnt :integer

Begin

(      n_cnt:=0            );//初始化 字符个数变量 n_cnt

Len_s:=length(s);//取s的长度

For i:=1 to ( s len_s )do

If s[i]>=’0’ and (    s[i]<=9    )then

n_cnt:=n_cnt-1;

(    num_count:=n_cnt          )

End;

2f_max函数为求两个数的较大数,并返回较大数,请在括号内天上恰当的内容

Function f_max(     b,a:  a,b:real           ):real;

Var

M:real;

Begin

If(       a>0     )then m:=a

Else(  m:=b   )

F_max:=m;

End;

四简答题

1请说出adoquery.execsql与adoquery.open的区别?

Execsql用户无返回结果如删除数据等,open用于有返回结果,如数据查询。相当于将active 设置为truth。

2findkey和locate的区别是什么?

Findkey用于关键字查询,需要输入索引字段,而locat是顺序查询,无需指定索引字段。

五问答题

1有9个tbutton类空间,那么分别为button1~burron9,在form上将他们排成3行3列,要求行间距相同,列间距相同,同时大小要一样。

按 第一步:……..;第二步:……的格式写出操作步骤,可以结合示意图说明

  1. Tbutton上放9个button;
  2. 大致安3.。。,3.。。排好9个button,选中全部button,在对象监视器中设置好height with;
  3. 设置第一行 首位button的位置,用alimentpalette进行对其和等间距操作;
  4. 设置第一列 首尾button的位置,用alimentpalette进行对齐和等间距操作;
  5. 选择二三行分别进行对齐和等间距操作;
  6. 选择二散列。。。;

2设计以界面,允许用户输入n个整数,将这n个数从小到大排序,画出 面示意图(标出组件名称)并写出主要时间的处理步骤(按第一步:……..;第二步:……的格式写),说明清楚是哪个对象的什么事件。

  1. 在memo中输入几个整数;
  2. listbox中显示排序结果,在排序button的click事件中写入排序代码:读取memo中的几个整数到数组中,排序,在listbox中顺序显示排序好的数组。

六.设计题

数据浏览时需要对记录进行排序,已知:所查询的表为 customers,主关键字为custno,次级索引有“bycomp” (索引字段为company)和“bycity” (索引字段为city),以下单选按钮为三个单独的按钮,name分别是rdcust    rdcomp和rdcity ,采用table或query组件均可,请写出实现该功能的代码