delphi考试试题

delphi考试试题
delphi考试试题

1、简述面向对象技术中“类”与“对象”的概念。结合Delphi中使用的组件,举例说明什么是类、什么是对象。

类是对象的抽象及描述,它是具有统一属性和方法的一类对象的统一描述体,是用来定义某类对象共有属性和方法的模板。而对象是类的实例。

在Delphi环境中,组件板上的组件就是类的概念,例如按钮组件就是按钮类。而用户在窗体上创建的一个按钮就是对象的概念(按钮对象)。用户可以在窗体上用按钮类创建若干个按钮对象,它们都是按钮类的实例。

2、在Delphi中,什么是对象的属性、方法和事件?

一个对象是由属性、方法和事件所组成。属性表示对象中的数据,方法是对象能够执行的动作,事件是能够引起对象反应的条件。

3、简述利用Delphi开发一个项目的基本步骤。

●建立一个新的项目

●建立窗体

●在窗体上加入对象

●检查和设定对象属性

●编写对象的事件处理程序

●编译、试运行,并进行代码调试

保存项目文件,退出Delphi 环境

4、在一个单元中,全局变量和局部变量的含义是什么?说明在单元文件中如何定义这两种变量(可举例说明)。

局部变量只能在定义它的程序块中使用,且其生命周期也只存在于从程序块开始执行到程序块执行结束。在一个事件处理程序中的变量说明部分,能够定义一个局部变量,供该事件处理程序内部使用。

而全局变量可以在单元中的各程序块中使用(共享),且生命周期存在于整个单元代码的活动期中。

在Implementation保留字后(但不要在程序块里)定义的变量就是全局变量。

选择题1、下列哪些条目可作为Delphi的变量名,哪些不行,并说明原因。

abc 123 abc123 123abc file a!

合法的变量名是:abc abc123

选择题7、如果想查看showmessage过程的帮助信息,请你说出两种获取帮助信息的方式。

①通过主菜单Help的Delphi Help命令调出帮助主页面,在“索引”页输入框中输入要查找的showmessage单词,即可找出相关的帮助信息。

②在代码中如果调用了showmessage过程,可将光标置于该单词中,然后按F1键,即可找出该过程的帮助信息。

选择题2、一个项目由一组文件组成。其中一些主要文件的后缀有:

.dpr .pas .dfm .dcu .~dpr .~pas .~dfm 等

请说出这些文件的中文名称及用途。

答:.dpr 项目文件,存放项目的主程序

.pas 单元文件,存放源代码,如事件处理程序等。

.dfm 窗体文件,数据文件,记录窗体上的数据信息(如组件位置等)

.dcu 目标文件,保存.pas编译后得到的结果。

.~dpr .~pas .~dfm 是备份文件,便于用户恢复到较早的一个项目版本选择题3、用于摆放其他组件的组件可以称之为“容器组件”。除窗体组件外,请你再说出一个容器组件的名字。

答:Panel 或GroupBox

选择题4、简述Edit组件下面几个事件的引发条件:

OnChange OnClick OnEnter OnExit OnKeyPress

答:

OnChange 当编辑框中内容改变时引发该事件

OnClick :当鼠标单击编辑框时引发该事件

OnEnter :当光标进入编辑框时引发该事件

OnExit :当光标离开编辑框时引发该事件

OnKeyPress :当在编辑框中输入文本时,每次按键都会引发该事件

编程题1、开发用户界面如下图所示的应用程序:

功能说明:

该界面是一个教师信息录入界面。

用户在编辑框(Edit1)中输入姓名,利用单选按钮(RadioGroup1)指定性别,利用组合框(ComboBox1)选择或直接输入所在系,利用列表框(ListBox1)指定职称。当输入完上述信息后,单击“确定”按钮,教师信息将显示在右边的Memo1编辑窗口中。

提示:在组合框和列表框中可以预置少量测试数据。

答案:

通过RadioGroup1的Items属性设置两个单选按钮(“男”和“女”),并将属性Column 设置为2(按钮摆两列)。

通过ComboBox1的Items属性设置下拉选单中的系名。

通过ListBox1的Items属性设置列表框中的职称列表。

“确定”按钮的单击事件处理程序如下:

procedure TForm1.Button1Click(Sender: TObject);

begin

memo1.Lines.Add(edit1.Text);

if radiogroup1.ItemIndex = 0 then

memo1.Lines.Add('男')

else

memo1.Lines.Add('女') ;

memo1.Lines.Add(combobox1.Text);

memo1.Lines.Add( listbox1.Items[listbox1.itemindex] );

end;

编程题2、开发一个简单的编辑器,设计界面如下图所示:

该编辑器功能要求如下:

●编辑窗口使用Memo组件实现,并为其设置垂直滚动条。

●单击“打开文件”按钮,弹出打开文件对话框,用户指定要打开的文件后(限于纯

本文件),文件内容加载到编辑窗口中。

●单击“保存文件”按钮,弹出保存文件对话框,用户指定要保存的文件名后,编辑

区的内容保存到指定文件中,然后清空编辑区。

●单击“复制”按钮,编辑区中被选择的内容拷贝到剪贴板。

●单击“剪切”按钮,编辑区中被选择的内容剪切到剪贴板。

●单击“粘贴”按钮,剪贴板中的内容拷贝到编辑区当前光标处。

答案:

建立的组件有:memo1、opendialog1、savedialog1、button1~5

编码如下:

procedure TForm1.Button1Click(Sender: TObject); //打开文件

begin

if opendialog1.Execute then

memo1.Lines.LoadFromFile(opendialog1.FileName) ;

end;

procedure TForm1.Button2Click(Sender: TObject); //保存文件

begin

if savedialog1.Execute then

begin

memo1.Lines.SaveToFile(savedialog1.FileName) ;

memo1.Clear ;

end ;

end;

procedure TForm1.Button3Click(Sender: TObject); //复制

begin

memo1.CopyToClipboard ;

end;

procedure TForm1.Button4Click(Sender: TObject); //剪切

begin

memo1.CutToClipboard ;

end;

procedure TForm1.Button5Click(Sender: TObject); //粘贴

begin

memo1.PasteFromClipboard ;

end;

编程题3、编写界面如下图所示的“系-学生主从查询”应用程序。两个按钮可以控制系记录的浏览,而学生信息总是显示当前系的学生记录。

提示:系学生数要动态计算。

答案:

procedure TForm1.Table1AfterScroll(DataSet: TDataSet);

begin

query1.Close ; //根据当前系计算学生数

query1.ParamByName('dno').Value :=table1['dno'] ;

query1.Open ;

query2.Close ; //根据当前系显示学生记录

query2.ParamByName('dno').Value :=table1['dno'] ;

query2.Open ;

end;

procedure TForm1.Button1Click(Sender: TObject); //上一记录

begin

table1.Prior ;

end;

procedure TForm1.Button2Click(Sender: TObject); //下一记录

begin

table1.Next ;

end;

一. 选择题(共40道)

1. 用户开发程序时需要经常在窗体和编辑器窗口之间来回切换,可使用快捷键(A)。

A、F12和F11

B、F12和F13

C、F12和Ctrl+F12

D、F12和Alt+F12

E、F12和Shift+F12

2. 某函数如下:

Function check(n,k:Integer):Integer;

Var m:Integer;

Begin

Repeat

m:=n mod 10;

n:=n div 10;

K:=k-1

Until k=0;

Check:=m

End;

若调用语句y:=check(3725,3),运行后y值为:(A)

A、7

B、5

C、2

D、0

3. 以下那个组件不可以由用户输入编辑文本(D)

A、TEdit

B、TcomboBox

C、TMaskEdit

D、Tlabel

E、TStringGrid

4. 一个对象类可以继承和直接使用它的父类的所有成员,除了:(E)

A、public域

B、private域

C、protected域和private域

D、protected域和方法

E、private域和方法

5. Delph没有用到的文件类型有(A)。

A、.frm

B、.pas

C、.dfm

D、.dpr

E、.res

6. Shape组件位于(B)组件板上。

A、standard

B、additional

C、data controls

D、system

E、samples

7. Query组件没有Table组件那样的(B )属性。

A、DataSource

B、TableName

C、Filtered

D、Database

E、UpdateObject

8. 下面关于属性的论述正确的是(C)。

A、属性能实现write方法

B、属性能实现read方法

C、属性可以只读或只写

D、属性可以公开或非公开

E、属性不能直接存取

9. 调试程序时,需要执行执行点所在的源代码行,并停留在下一个源代码行。可通过(C)菜单项进行。

A、Run

B、Step Over

C、Trace Into

D、Trace To Next Source Line

E、Run to Cursor

10. 设a是布尔变量,其它是整型变量,下面正确的赋值语句是(C )

A、x=y div 7

B、x:=y:=z+1

C、a:=x=y mod z

D、x+y:=z

E、x+y=a

11. 表达式round(4.2) mod trunc(2.8)的值是(A )

A、0

B、1

C、2

D、3

E、4

12. 下列常量定义合法的是(A )

A、CONST width=7;

B、CONST case='7';

C、CONST 1A=7.9;

D、CONST century=year div 100;

E、CONST 5<>7;

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

A、+

B、OR

C、>=

D、DIV

E、-

14. 已知a、b、c、d是同类型的简单变量,而且已有互不相同的值,执行下列语句:

b:=a; a:=c; d:=a; d:=b; 后,其值相等的变量是(A)

A、a,c

B、a,d

C、c,b

D、b,a

E、无法确定

15. 已知有说明Var x:real;下列程序段中的错误为:(B )

case x<=2.0 of

0:x:=0;

1:x:=1

end

A、case表达式中有常数

B、case常量和case表达式类型不一样

C、赋值语句两边类型不一致

D、case表达式为关系表达式

E、case语法不规范

16. 以下语句的循环执行次数是(B )

x:=37; y:=3

while y<=x do y:=y+y

A、3

B、4

C、5

D、6

E、0

17. 程序For I:=1 to 5 do

for j:=2 to I do

writeln('*');

输出的'*'个数为(B )

A、5

B、10

C、15

D、25

E、30

18. 下列函数头合法的是(D)

A、function total(x:real);

B、procedure ab(a,b:real):real;

C、procedure sum;

D、function f(var f:real):integer;

E、procedure FontListBoxKeyDown(Sender: TObject; var Key: Word;

Shift: TShiftState;);

19. 已知函数如下:

function f(n:integer):integer;

begin

if n=0 then f:=0

else if n>0 then f:=f(n-2)

else f:=f(n+3)

end;

则调用f(5)的值是( A)

A、0

B、1

C、-1

D、-2

E、2

20. 下列类型中合法的是(A )

A、TYPE a=10..10;

B、TYPE b=10..5;

C、TYPE c=0..SQRT(10);

D、TYPE d=10.0..20.0;

E、TYPE e=random(9)..1

21. 下列类型的变量中,不能用write语言直接输出的变量是()

A、布尔型变量

B、枚举型变量

C、整型变量

D、字符型变量

E、长整型变量

22. 假定y是集合变量,变量x的类型与y的基类型相同,则下列表达式错误的是( )

A、[x] in y

B、y-[x]

C、[x]+[ ]*y

D、y<=[x]

E、y mod [x]

23. 一个记录的域标识符不能和下列内容相同的是()

A、常量的标识符

B、记录名

C、类名

D、同层的域标识符

E、不同层的域标识符

24. 已知Var a:array['a'..'e',1..4,boolean] of real;

则数组a中包含的元素的个数为()

A、5

B、20

C、40

D、11

E、22

25. 已知Var a:array[1..10] of integer;

k,I:integer;

程序段:

k:=1;

for I:=1 to 10 do

if a[I]>a[k] then

k:=I;

writeln(a[k]);

执行后输出的是(B )

A、数组中的平均值

B、数组中的最大值

C、数组中的最小值

D、数组中的总和

E、无法确定

26. 已知Var f:file of integer;则f所代表的文件是(D )

A、ASCII码文件

B、二进制文件

C、文本文件

D、存放整数的文本文件

E、HTML文件

27. 在VCL中(A )是TDBListBox的父类

A、TCustomListBox

B、TListBox

C、TDBDataset

D、TDatabase

E、TDBEdit

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

A、Handle

B、Hint

C、ShowHint

D、Showing

E、Visible

29. 发生在鼠标左键单击控件时的事件是(C)

A、OnMouseDown

B、OnMouseUp

C、OnClick

D、OnDbClick

E、OnEnter

30. 下列值中不是FormStyle属性的可能值的是(B )

A、fsNormal

B、fsMIDChild

C、fsMIDForm

D、fsStayOnTop

E、fsDeskTop

31. ()是Delphi包含的文件管理子例程

A、Append和insert

B、Append和MkDir

C、FileClose和insert

D、MkDir和insert

E、GetDir和insert

32. ( )是与DDE有关的组件

A、DdeServerConv/DdeClientConv/DdeServerItem/DdeClientItem

B、DdeServer/DdeClient

C、DdeConv/DdeItem

D、DdeConv/DdeServerItem

E、DdeServer/DdeClient/DdeServerItem/DdeClientItem

33. 使用Delphi多线程的优点是(A)

A、程序运行速度加快

B、不需要考虑同步访问共享资源与内存

C、程序编写更简单

D、可以在后台运行线程

E、不会是Windows出错

34. 有多种方法可以在OLE文档接收器中放置对象,但不包括(A)

A、使用特定的菜单命令嵌入对象

B、从剪贴板粘贴对象,来建立新嵌入对象

C、从剪贴板粘贴-链接对象,来建立新嵌入对象

D、由服务器生成的文件中建立新对象。

E、通过ODBC接口,传递对象

35. 用于异常处理的关键字不包括(A )

A、try

B、except

C、finally

D、raise

E、error

36. 以下说法不正确的是()

A、VCL组件是Delphi最有效和最有用的组件

B、COM是OLE和ActiveX的基础

C、COM对象可用于任何Windows编程环境

D、VCL组件是COM对象

E、典型的COM对象包含在扩展名为.DLL或.OCX的文件中

37. TcomboBox组件Style属性缺省值为(A )

A、csDropDown

B、csSimple

C、csDropDownList

D、csOwnerDrawV ariable

E、csOwnerDrawFixed

38. 对象库“New Item”的“New”标签页能创建的对象有()

A、Package、DLLs、Component、Web Server Application

B、Package、COM Object、Component、Web Server Application

C、Package、DLLs、Component、About Box

D、Package、DLLs、Component、DB Web Application Wizard

E、Package、DLLs、Component、MID Application

39. Delphi中取值范围0到255的数据类型是(B)

A、ShortInt

B、Byte

C、SmallInt

D、Real

E、Word

40. 以下关于事件的说法不正确的是()

A、不一定要响应某个组件所定义的所有事件

B、多个组件可以共享同一个事件处理程序

C、根据需要可以响应任何组件的事件

D、单击Object Inspector中的事件处理程序名,Code Editor将自动进入该事件的代码段。

E、事件的Sender参数是用来决定哪个组件产生了此事件

二. 是非题(共20道)

1. 从主菜单上选择Project|Syntax Check菜单选项,Delphi将编译从上次编译后有改动的任何单元,并报出遇到的错误。(是)

2. Delphi的VCL对象有些是指针,从堆栈中分配空间,有些则不是。()

3. 粘贴时,如果作为容器的组件已被选择,剪贴板中的组件会当作容器组件的子组件来粘贴()

4. 在由Delphi 管理的窗体类声明段中加进任何代码都会引起程序出错。()

5. Delphi 可以在一个报表中使用一个以上的明细区( )

6. Delphi 可以象其它开发工具一样使用传统的资源,比如菜单可以作为资源加载,以利于实现多国语言环境。( )

7. 创建组件时可以定义属性的缺省值,但字符串属性不能有缺省值。( )

8. 声明一个常量后,在程序中则不可以改变这个常量的值。( )

9. 构造子必须通过类的一个有效实例来激活。( )

10. 在设计阶段Object Inspector显示被选组件的所有属性。( )

11. 在Delphi IDE中,按住Shift键,同时单击Components Palette上的组件图标,可以在窗体内放置多个同类组件。()

12. 为减少编程中的错误,用户可以使用Delphi提供的系统函数IsValidIdent 检验字符串是否合法。()

13. 用户如果不在一个完整的事件响应过程添加任何代码,当保存或编译该项目时,该过程将被自动清除。()

14. 使用Runtime Packages技术可以将原先独立的可执行文件分解为动态链接库加上小的可执行文件,这样作的好处是所占磁盘空间比一个独立的可执行文件小。( )

15. Delphi和VB一样不能产生真正的可执行代码(本机代码),但是Delphi 开发的程序比VB的运行速度快。( )

16. 大多数组件的属性可以在运行时改变,而且,有些只能在运行时刻改变。()

17. 对于用户的Delphi工程中创建的窗体及其组件的属性都保存在一个独立的描述文件,即扩展名为DSK的文件中。( )

18. Search菜单的Find Error命令是用来寻找运行时的错误,而不是寻找编译错误。()

19. Enabled属性不适用于非可视组件。()

20. Delphi采用基于对象的引用模式,即类的每一个变量不保存对象的值,而

保存一个引用或一个指针来说明对象存储的内存位置。()

作为一个世界级的大型软件公司,Borland的面试题也是与众不同的

,经过我们众多面试者的收集,现在将我们遇到过的题列出,希望

对想去Borland工作的人有点帮助。

首先说一句,这些题都很难,不要用一般的眼光去看待,也许超常

一些的回答会更有吸引力,实际面试时这些题是随机抽取的,技术

类和实践类共计10题,每类5题,其他类的不一定是试题,有可能

Borland的工作人员会请你喝咖啡,然后在曰常的对话是无意的问到

,这类问题最为麻烦,答不好就完蛋。Borland公司对人才的需求不

仅仅是Delphi,如果你精通JBuilder或C++Builder,Borland一样欢

技术类

1.链表和数组间的区别是什么?

(Delphi中数组就是链表)

2.列举出你知道的10种排序算法。

3.你在什么情况下会手动的为程序分配内存?

4.什么是RTTI?

(Runtime Type Information,运行期类型信息)

5.线程和进程间的区别是什么?

6.malloc和new的区别是什么?

(此题有极大的陷阱,delphi中的new过程只是针对OLE对象的,常规的对象不能够使用new。而malloc可以对任意的对象分配内存,这里需要用到sizeof函数。)

https://www.360docs.net/doc/26305284.html,和com+间的区别是什么?

8.OLE和ActiveX的区别是什么?

9.你将如何用Delphi实现Corba?

(用delphi自带的Corba工具对程序进行转换即可)

10.delphi的编译核心是什么?

(80x86汇编+ Object Pascal)

11.如何跨越windows平台直接操作CPU?

(使用asm关键字写入汇编代码即可)

12.delphi如何编写CGI程序?

(使用WebBroker,WebSnap,WebService均可实现)

13.delphi与VB的区别是什么?

14.delphi与C++的区别是什么?

15.delphi与Java的区别是什么?

16.你将如何做到软件与网络的结合?

17.如何在Linux下安装delphi

(与Windows下安装方法相同)

18.如果在一个TPageControl中要生成多个相同的TTabSheet,你将如何做以减小代码冗余?

(将TTabSheet连同其中控件及方法一起抽象成类)

19.delphi中有内置API函数吗?

(有陷阱,delphi中没有内置API函数,delphi实现的API功能完全由代码实现)

20.如何用delphi编写C++的插件?

21.如何用delphi编写Java的插件?

22.列举出delphi能够操作的数据库

(这题答所有的数据库就行了,不然你一辈子也列举不完,delphi的系统中自带的数据库驱动就有几百套)

23.delphi中如何实现静态方法?

24.你将如何把一个类封装到记录(Record)中?

(看起来很难,其实很简单,先声明一个类,然后声明record,在record的成员中设定类成员即可)

25.你将如何实现控件的动态事件绑定?

26.你将如何用delphi编写出ASP网站?

(使用IntraWeb组件和AW转换器即可,或者直接用ExpressWeb进行开发)

27.请讲出VCL的层次

(这题最变态,从TObject开始背吧)

28.如果有你编写不了的功能,你会怎么处理?

29.GNome下的delphi有什么特殊的功能?

(如果你没用过GNome,想进Borland就很难,Borland规定的操作系统就是GNome)

30.你将如何把一个自定义类型的数据从服务端传递到客户端?

(别被迷惑,其实只需串行化就行了)

31.你将如何用delphi动态的创建一个Paradox表?

32.你将如何解决windows系统下出现的未调用CoInitialize错误?

33.如何用批处理文件编译delphi程序?

(用DCC32.EXE在命令行下进行编译)

34.你会在什么时候使用published访问区分符?

实践类

1.用数组实现栈,并且当栈空间满时,栈空间增加一倍。

2.输入年月曰格式yyyymmdd,判断是否是周末。

3.遍历一棵树,不能用递归

4.读取一个XML文档,将其中的字段输入到数据库中

5.编写一个程序读取计算机上的SQL Server数据内容

(给你编程的计算机没有安装SQL Server,也不允许安装,同时,也没有任何的可用服务器与这台计算机相关联。这道题看起来非常难,实际上你操作了就知道,解决方法甚至比通过服务器连接更简单)

6.编写一个程序,向指定号码的手机发送一条短信

(给你编程的计算机已开通GPRS服务,发送的号码是考官的手机号)

7.编写一个程序,读取指定文件夹内的所有文件

(那个文件夹里有近万个文件,必须用多线程的方法进行设计,不然程序一运行就会卡死)

8.编写一个程序,为本机获取一个二级域名

(这个很难,不知道怎么做,估计需要知道域名协议的有关内容)

9.编写一个程序,这个程序能够判断一个可执行文件是用什么语言编写的

(涉及到资源流的概念,同时需要熟悉各编程语言的特性代码)

10.编写一个服务器,这个服务器能让互联网上的用户访问到,并且能够显示一个网页。

11.编写一个能够同时在windows和Linux下运行的记事本程序

12.编写一个能够在局域网内相互发送文件的程序

(使用内存流即可轻松解决此问题)

13.编写一个程序,输入生曰后输出从生曰到现在已经过了几天

14.编写一个程序,该程序的窗体没有边框,但是可以通过按下键盘的方向键来移动。

15.用Delphi实现Java中的EJB操作

(别说你没有学过Java,delphi的特性就是多语言支持,这个一定要掌握的)

16.编程一个过程,这个过程可以将任意的程序发送快捷方式到任意位置

(使用OLE技术制作即可)

17.制作一个软件,它可以访问,添加,修改或删除Paradox数据内的数据,但是这个软件不允许写任何的代码

18.编写一个程序,这个程序能够启动记事本,并且等待它运行结束

(用进程勾子制作即可)

19.编写一个16进制数转为10进制数的函数,但是只允许写一行代码

其他类

1.你喜欢喝咖啡吗?

2.你抽烟吗?

(Borland公司内禁止抽烟,该怎么回答应该知道吧)

3.你有女朋友吗?

4.你谈过几次恋爱?

(从恋爱的次数能看出一个人的稳定性,越少越好)

5.你无聊的时候会想到要做什么?

(千万不要回答写程序,这样只会让别人以为你是呆子,除了写程序什么也不会)

6.你怎么会想到要成为一个程序员?

7.如果公司暂时无法为你安排岗位,你愿意先在公司做勤杂吗?

(这题问的很有水平,千万不要因为急于想进Borland而回答“愿意”。你应该拒绝,因为程序员本来就不是做杂活的)

8.你以前有没有学过其他的编程语言?

9.你对微软或是Sun公司的评价怎样?

(不要说太偏激的活,特别不要谈到龚断之类的东西,因为borland自己也龚断得厉害)

10.如果让你做项目经理,你会如何分配手下员工的工作?

(最好的回答是“不知道”,因为你现在不是项目经理,没有必要谈那么多理想的东西,Borland不喜欢那些事情没做就先夸夸其谈的

文来自百度知道

第一部分Delphi知识

1. 如果一个元件希望放到IDE的元件面板上,它必须从________类派生,

如果一个元件能作为其它元件的容器,它必须从_____________类派生,

如果一个元件在运行时可见,它必须从___________________类派生

(A)TGraphicControl (B)TWinControl (C)TComponent (D)TPersistent (E)TControl

2、写出TEdit、TLabel、TTimer的主要继承路径,答题格式TXXX->TXXX->……

3、1)为防止界面窗体“僵死”,可调用如下代码

A、Application.DoEvent

B、Application.DoEvents

C、Application.Idle

D、Application.ProcessMessages

2)解释为什么?

4、有如下类定义,请问类THouse的InstanceSize是_______

TPoint = packed record

X: Longint;

Y: Longint;

end;

THouse = class

private

FOwner: string;

FPosition: TPoint;

FBounds: array[0..2] of Integer;

FLessees: TStrings;

public

procedure Paint;

property Owner: string read FOwner;

end;

A、24

B、28

C、32

D、40

5、常用的控件ListBox、ComboBox等都有BeginUpdate和EndUpdate方法,请问他们的主要作用是什么?

6、写SQL语句

如果有一个部门人员表BaseInfo,字段为ID,PID,Name(姓名),PID表示上下级关系:

(1)分组查询:统计每个PID的记录数ID 记录数

(2)请做一个查询,得到以下结果(按姓名排序)

ID 姓名下属姓名

(3)在TSQL中使用事务需要用那些SQL关键字?

7、解释一下Windows的消息机制和经典Windows应用程序的运作流程

8、解释Delphi中“事件”的实现原理,如果你要为控件扩展一个自定义事件,你该怎么做?

9、为什么在TList中Add操作要比Insert操作快?

10、某次调试中发现某树形控件响应很迟缓,经调试发现是如下语句,TreeView.Items.Clear执行缓慢,请分析可能的原因是什么?

第二部分Delphi编程

【编程】给定一个文本文件(英文文章),统计其中各单词的频次。

网友提供答案:

1. C,B,E

2.TObject-Tpersistent-TCompernent-TWinControl-TCustomEdit,

TObject-Tpersistent-TCompernent-TGraphicControl-TCustomLable,

TObject-Tpersistent-TCompernent

3.D

4.C

在DELPHI中调用存储过程和使用内嵌SQL哪种方式更好,为什么?

各有好处,要根据需要而言。

存储过程

优点:相对而言,由于其在服务器端执行,只返回结果集,网络流量较低,速度会快一点,而且,更好的做到了界面与业务逻辑(存储过程)的分离,由于C/S模式在维护升级方面的特点,如果后期业务逻辑发生变化,只需要修改存储过程就可以了(前提是原存储过程接口定义的好),而不需要升级所有客户端。

缺点:在一些跨DBMS的系统中,需要将存储过程迁移到另外的DBMS(如从SQL Server转到Sybase),这是需要一定的工作量的。而如果采用内嵌SQL,一般情况下是使用标准SQL,对许多流行的DBMS都是通用的(如果不使用该DBMS特有的系统函数的话),就不存在这个问题。

内嵌SQL

优点:编写容易,控制灵活。

缺点:上面存储过程中有描述。

大数据时代的利与弊

虽然早已听说过舍恩伯格的《大数据时代》,但直到前不久才浏览本书的内容,看完之后还是有点震撼的,主要是大数据对我们日常生活和思维的影响太大了。下面摘取部分原文表述或案例来梳理一下这本书,其中有我本人的部分总结和评述。 有三个案例比较有意思,一是福特的名言,“如果当年去问顾客他们想要什么,他们肯定会告诉我:一匹更快的马。” 乔布斯多年来持续不断地改善Mac笔记本依赖的可能是行业分析,但是他发行的iPod、iPhone和iPad靠的不是数据,而是直觉,第六感。谷歌公司内部的研究表明工作表现与大学毕业时的平均绩点没有关系,但其创始人依然要应聘者提供分数。 前两个例子(福特和苹果)说明大数据有时候是无效的,后面谷歌的例子则说明管理层对数据过度的执着。 大数据对人类生活的破坏莫过于它过于强大的预测功能,如通过一个人过去的表现可以准确预测到他在特定环境下一定会犯罪,那么,社会保障机制就会惩罚一个从来没有犯错的人。如书中所述: “因为预测的结果几乎不可辩驳,人们也就无法为自己开脱。但这种基于预测得出的惩罚不仅违背自由意志的原则,同时也否定了人们会突然改变选择的可能性。” 以上弊多些,下面谈利。

聪明的公司会从人们与信息交互中收集数据废气,以用来改善现有的服务或推出全新的服务。 “拥有知识曾意味着掌握过去,现在则更意味着能够预测未来。”-----这句话很精辟。 “情报分析员结合实地考察报告和过去IED袭击地点、时间和人员伤亡的详细信息,据此预测一天中最安全的运送路线。”类似的,我也听说过美国建立的爆炸物碎片博物馆的事情,基于爆炸物的各种信息追踪恐怖分子武器弹药的生产基地和储存地点。 “为了促进大数据平台的良性竞争,政府必须运用反垄断条例。” 谷歌对量化数据的极致追求可能过头了,因此激起了员工的反抗。(弊)通过大数据预测来判断和惩罚人类的潜在行为是对公平公正和自由意 志的一种亵渎。(弊) 过去是要成为一个优秀的生物学家就需要认识很多生物学家,但现在可能是,要解决一个生物难题或许和天体物理学家或数据视图设计师联系即可。 由于大数据的功劳,微软机器翻译部门的统计学家在茶余饭后的谈资就是每次一有语言学家离开他们的团队,翻译质量就会好一点。 当亚马逊的贝索斯发现算法推荐能促进销量增加的时候,他就不再需要书籍评论员了。

DELPHI期末考试试题

《Delphi程序设计》试卷 学号:姓名:专业:班级: 题号一二三四五总分登分人 题分3010103020100 得分 一、单项选择题(每小题1分,共30分) 得分评卷人 1.一个Delphi应用程序必有一个文件和至少一个单元文件。 A.程序 B.工程 C.数据 D.图形 2.在窗体中完成多个控件整齐排列,应使用何种操作? A.Align B.Bring to front C.Scale D.Send to back 3.form(窗体)的OnCreate事件在何时触发?. A.窗体关闭 B.窗体建立 C.窗体隐藏 D.窗体活动 4.下列哪种属性可以设置窗体无最大化、最小化和关闭图标? A.bordericons B.formstyle C.visible D.enabled 5.下列哪个属性决定控件的可见和不可见? A.Color B.Formstyle C.Visible D.Enabled 6.所有可视化的VCL控件都是从哪一个基类派生而来的? A.Tcontrol B.TwidgetControl C.TwinControl D.TwindowControl 7.Delphi中,是特殊的单元文件,可理解为主单元文件,或者说 主程序,而其它的单元文件可以看作是被其所调用的子程序。 A.窗体文件 B.项目文件 C.资源文件 D.配置文件 8.下列哪个属性是控制窗体标题的属性? A.Formstyle B.Caption C.Font D.Enabled 9.下列哪种类型的常量不能用来定义子界类型? A.实型数据(Real)B.用户定义的任何顺序类型C.字符型(Char)D.整型(Integer) 10.下列变量命名正确的是。 A.7ABC B.Program7 C.page@21 D.program 11.如果要检查edit编辑框中输入的字符,可以在哪个事件处理程序中编写代码 检查。 A.OnClick B.OnEnter C.OnMouseUp D.OnKeyPress 12.以下哪个函数是输入对话框函数?。 A.inputbox B.messagebox C.messagedlg D.showmessage 13.下列对象不能响应Click事件的是。 A.列表框B.图片框C.窗体D.计时器14.已知对话框函数MessageDlgPos(ConstMsg:String;DlgType:TmsgDlg Type;Buttons:TmsgDlgButtons;HelpCtx:longint;X,Y:Integer):Word.问:

大数据时代几个例子告诉你什么是大数据

大数据时代几个例子告诉你什么是大数据 Document serial number【UU89WT-UU98YT-UU8CB-UUUT-UUT108】

大数据时代,几个例子告诉你什么是大数据 工具类厂商蓄意炒作大数据,以达到售卖产品的目的,但导致的结果是很多人对大数据这一概念云里雾里。实际上,大数据就发生在你我身边,虽然你看不到它,但它却时时影响着我们的生活。 现阶段,和大数据相关的企业有三种。一种是工具类公司,他们宣传得最卖力,并且把大数据吹出了泡沫,原因是它们希望把自己的产品卖给企业;一种是依托于大数据从事咨询服务类的企业;还有一种就是实实在拥有大数据的公司,它们和我们休戚相关,也就是下面的小故事所要阐述的内容。 第一个故事,百货公司知道女孩怀孕 美国的Target百货公司上线了一套客户分析工具,可以对顾客的购买记录进行分析,并向顾客进行产品推荐。一次,他们根据一个女孩在Target连锁店中的购物记录,推断出这一女孩怀孕,然后开始通过购物手册的形式向女孩推荐一系列孕妇产品。这一作法让女孩的家长勃然大怒,事实真相是女孩隐瞒了怀孕消息。 点评:看似杂乱无章的购买清单,经过对比发现其中的规律和不符合常规的数据,往往能够得出一些真实的结论。这就是大数据的应用。 第二个故事,搜狗热词里的商机

王建锋是某综合类网站的编辑,基于访问量的考核是这个编辑每天都要面对的事情。但在每年的评比中,他都号称是PV王。原来他的秘密就是只做热点新闻。王建锋养成了看百度搜索风云榜和搜狗热搜榜的习惯,所以,他会优先挑选热情榜上的新闻事件来编辑整理,关注的人自然多。 点评:搜狗拥有输入法,搜索引擎,那些在输入法和搜索引擎上反复出现的热词,就是搜狗热搜榜的来源。通过对海量词汇的对比,找出哪些是网民关注的。这就是大数据的应用。 第三个故事,阿里云知道谁需要贷款 这是阿里人讲述的一个故事。每天,海量的交易和数据在阿里的平台上跑着,阿里通过对商户最近100天的数据分析,就能知道哪些商户可能存在资金问题,此时的阿里贷款平台就有可能出马,同潜在的贷款对象进行沟通。 点评:通常来说,数据比文字更真实,更能反映一个公司的正常运营情况。通过海量的分析得出企业的经营情况,这就是大数据的应用。 第四个故事,中移动挽留流失客户 iPhone进入中国后,铁杆的移动用户王永铭加入了联通合约机大军。由于合约机承担了大量通话内容,王永铭将全球通换成了动感地带。三个月之后,王永铭接到了中国移动的10086电话,向他介绍中移

Delphi如何使用基本的绘图函数绘制统计图

一个windows自带的画图工具是无论如何也不能满足我们的画图需要的,很多效果都需要我们在另外的工具中来实现。这些高级的功能是如何实现的呢,如何操纵一些基本的属性和函数,让它们最终能作出我们想要的效果呢?这里我们以绘制统计图来说明这些问题。 解决思路―― 这里,我们暂且先撇开具体的问题,综合地一下讨论画图的问题。 画图工具是基本元素的具体实现,对于我们初学者来说,还是有很好的参考价值的,在delphi 5中有一个自带的工程例子“……Borland\Delphi5\Demos\Doc\Graphex”,这个例子可以实现一些基本的绘图功能。对这个例子多加修改,一定会有所收获的。这里就不列出它的详细代码了,有心的读者可以自己找到这个例子。我这里只是想综合地讨论这方面的问题。使用DELPHI编写绘图软件的灵魂就在于操作画布,画笔和刷子,尽可能地挖掘它们的属性和相关参数的设置。 (一)画布 画布,画笔和刷子之间的关系很明了.其实,画笔和刷子都是画布的一个属性.而画布也只是TForm,TImage,TShape等组件对象的一个属性,专门负责与图象相关的信息打交道.它的主要作用可以概括如下几点: 1.指定使用画笔,刷子和字体的使用类型; 2.绘制和填充指定形状的线或图形; 3.修饰和改变图象; 画布的主要属性有: Brush--指定填充图形和背景的样式 CanvasOrientation--指定画布的定位类型,有coLeftToRight, coRightToLeft两个属性; ClipRect--指定剪切矩形的边界; CopyMode--指定图形图象的复制模式; Font--指定画布上使用的字体; Handle--为画布指定窗口GDI对象的设备描述表; LockCount--指定画布被别的线程锁定的次数; Pen--指定画布上使用的画笔,具体见下面描述; PenPos--指定画笔当前的位置; Pixels--指定当前剪切矩形的象素颜色; TextFlags--指定字体在画布上的显示方式,有ETO_CLIPPED,ETO_OPAQUE,ETO_RTLREADING,ETO_GL YPH_INDEX,ETO_IGNORELANGUAGE,ETO_NUMERICSLOCALETO_NUMERIC SLATIN等值可选; 画布相关的API函数及其注释如下: Arc--按指定方式画一条弧; BrushCopy--把位图复制到指定的画布的矩形中,用画布刷子颜色替换位图的颜色; Chord--按指定方式画弦; CopyRect--从一个矩形区域复制部分图象到另一个矩形区域; Draw--用指定参数在指定位置画图; DrawFocusRect--按指定焦点风格,通过异或操作来绘制一焦点矩形; Ellipse--按指定参数画一椭圆; FillRect--按指定的刷子填充一矩形; FloodFill--使用当前选定的刷子填充指定设备描述表中的一块区域;

Delphi程序设计试题及解答(wan)

《Delphi 程序设计》试题及解答 卷6 一、填空题(20分,每空2分) 1、现实世界中对象具有自己的状态和行为。对应着,面向对象技术中的对象可以具有自己的属性和 方法 。 2、结构化程序设计要求程序中仅采用顺序、分支和循环三种控制结构,其中每种结构只能有 一个入口 和一个出口。 3、Delphi 应用程序中单元文件的扩展名是 .pas 。 4、与数学表达式 53)(cos 2++x b a 对应的Object Pascal 表达式是 。 5、对于下面的条件表达式: ((3 <= x )AND (x < 0)) OR (x in [1..10]) 当x = 3 时, 该表达式的值为 。 6、ListBox 对象列表框中的内容是通过 属性来进行设置的。 7、如果想设计DBGrid 对象的列标题和对齐方式,可以对DBGrid 对象的 属性进行设置。 8、时钟组件(Timer )能有规律的以一定时间间隔触发 事件 9、能够实现格式化输入的编辑框组件是 10、利用 对象的LineTo 等方法,可以绘制基本图形。 二、单项选择题(20分,每题2分) 1、Delphi 程序设计的基本特点是( )。 A . 可视化程序设计 B . 代码程序设计 C . 事件驱动编程 D . A 和C 2、进度显示组件ProgressBar 的当前进度可以通过( )属性设置。 A . Step B .Scroll C . Position D .Max 3、下列变量命名正确的是( )。 A .7ABC B . My7 C . page@2 D .cmd..1 4、“x 是小于200的非负数”的Object Pascal 表达式是( )。 A .0 ≤ x < 200 B . x >= 0, x<200 C .(x >=0) AN D (x < 200) D . (x >= 0 ) OR (x<200) 5、在窗体上建立多页面的用户界面,需要首先建立的对象是( ) A . TabControl B .PageControl C . HeaderControl D .PageScroller 6、能够删除edit1中内容的语句是( )。 A . edit1.Clear ; B .edit1. Focused ; C . edit1.Text= null ; D .edit1.text :='\0' ; 7、现建立一个简单报表,仅包含数据列标题栏、数据栏和汇总栏,则在Bands 属性的子属

delphi数学模块函数、过程大全

function ArcCos(const X : Extended) : Extended; overload; function ArcCos(const X : Double) : Double; overload; function ArcCos(const X : Single) : Single; overload; function ArcSin(const X : Extended) : Extended; overload; function ArcSin(const X : Double) : Double; overload; function ArcSin(const X : Single) : Single; overload; function ArcTan2(const Y, X: Extended): Extended; procedure SinCos(const Theta: Extended; var Sin, Cos: Extended) register; function Tan(const X: Extended): Extended; function Cotan(const X: Extended): Extended; { 1 / tan(X), X <> 0 } function Secant(const X: Extended): Extended; { 1 / cos(X) } function Cosecant(const X: Extended): Extended; { 1 / sin(X) } function Hypot(const X, Y: Extended): Extended; { Sqrt(X**2 + Y**2) } function RadToDeg(const Radians: Extended): Extended; inline; { Degrees := Radians * 180 / PI } function RadToGrad(const Radians: Extended): Extended; inline; { Grads := Radians * 200 / PI } function RadToCycle(const Radians: Extended): Extended; inline; { Cycles := Radians / 2PI } function DegToRad(const Degrees: Extended): Extended; inline; { Radians := Degrees * PI / 180} function DegToGrad(const Degrees: Extended): Extended; function DegToCycle(const Degrees: Extended): Extended; function GradToRad(const Grads: Extended): Extended; inline; { Radians := Grads * PI / 200 } function GradToDeg(const Grads: Extended): Extended; function GradToCycle(const Grads: Extended): Extended; function CycleToRad(const Cycles: Extended): Extended; inline; { Radians := Cycles * 2PI } function CycleToDeg(const Cycles: Extended): Extended; function CycleToGrad(const Cycles: Extended): Extended; { Hyperbolic functions and inverses } function Cot(const X: Extended): Extended; inline; { alias for Cotan } function Sec(const X: Extended): Extended; inline; { alias for Secant } function Csc(const X: Extended): Extended; inline; { alias for Cosecant } function Cosh(const X: Extended): Extended; function Sinh(const X: Extended): Extended; function Tanh(const X: Extended): Extended; function CotH(const X: Extended): Extended; inline; function SecH(const X: Extended): Extended; inline; function CscH(const X: Extended): Extended; inline; function ArcCot(const X: Extended): Extended; { IN: X <> 0 } function ArcSec(const X: Extended): Extended; { IN: X <> 0 } function ArcCsc(const X: Extended): Extended; { IN: X <> 0 } function ArcCosh(const X: Extended): Extended; { IN: X >= 1 } function ArcSinh(const X: Extended): Extended;

delphi面试题及答案

delphi面试题及答案 【篇一:delphi程序期末试题答案】 一、单选题(每小题2分,共30分) 1.在 radiogroup 组件中有 4 个单选框,当选中第 2 个单选框时,radiogroup 组件中的 itemindex 属性值应为(b)。 a.0 b.1c.2d.3 2.函数和过程的区别为(a)。 a.函数执行后返回一个值,而过程不需返回值b.过程执行后返回一个值,而函数不需返回值c.过程在被调用时,能执行某种特殊功能并能返回到调用它的地方d.函数在被调用时,能执行某种特殊功能并能返回到调用它的地方3.32 and 27 的值是(b)。 a.59b.0c.27d.32 4.窗体与数据模块的扩展名是(b)。 a..dcu b..dfm c..pas d..dpr 5.delphi 中用什么函数来析构一个组件(c)。 a.constructor b.destroy c.free d.create 6.一个指针变量ptr 的域成员 fs 访问的方法是(c)。 a.ptr-fs b.ptr.fsc.ptr^fs d.ptr@fs 7.type aarrays=[1?8,1?5] of integer ,该类型定义了多少个下标元素(d)。 a.45 b.54 c.48 d.40 8.delphi 的所有类都是从什么类继承下来的(b)。 a.tcomponent b.tobject c.tstream d.tnull 9.定义构造函数时用到的保留字是(c)。 a.class b..implementation c.create d.construction 10.下列组件中属于可视组件的是哪一个(d)。 a.tdatasource b.topendialog c.ttable d.tscrollbar 11.设有过程 procedure pro(var x,y:integer); 变量 a , b 为整型 变量,其值分别为 5、6,则合法的过程调用语句是(a.pro(5,6) b.pro(5,b) c.pro(a,6)d.pro(a,b) 12.下列组件中不能获取焦点的是(b)。 a.tedit b.tlabelc. trichedit d.ttreeview13.定义抽象类必 须使用的指令字是(a)。 a.abstractb.virtualc.dynamicd.override” 14.delphi是哪个公司的产品(c)。 a. microsoft b.ibm c.borland d.dom

DELPHI常用函数说明

一、数据类型转换函数1 在我们编写程序当中,根据不同情况,会使用到多种数据类型。当要对不同的类型进行操作时,必须要将不同的类型转换成同样的类型。因此熟练地掌握数据类型的转换是非常重要的。 1.FloatToStr 功能说明:该函数用于将“浮点型”转换成“字符型”。 参考实例: Edit1.Text := FloatToStr(1.981); 2.IntToStr 功能说明:该函数用于将“整数型”转换成“字符型”。 参考实例: S := IntToStr(10);(注:S为String类型变量。) 3.IntToHex 功能说明:该函数用于将“十进制”转换成“十进制”。该函数有二个参数1。第一个参数为要转换的十进制数据,第二个参数是指定使用多少位来显示十六进制数据。 参考实例: Edit1.Text := IntToHex('100', 2);

执行结果,Edit1.Text等于64。 注意:Delphi没有提供专门的“十六进制”转换为“十进制”的函数。使用StrToInt函数可以实现这个功能。具体代码是:I := StrToInt('S\' + '64'); 这时I等于100。加上一个'S\'即可将“十六进制”转换为“十进制”。 4.StrToInt 功能说明:该函数用于将“字符型”转换成“整数型”。 参考实例: I := StrToInt('100'); 注意:不能转换如StrToInt('ab')或StrToInt('好')这样的类型,因为他们并不存在数字型。 5.StrToFloat 功能说明:该函数用于将“字符型”转换成“浮点型”。 参考实例: N := StrToFloat(Edit1.Text); 注意:Edit1.Text中的内容为1.981(凡在Edit 控件中显示的文本均为字符串)。N为Double类型,用于保存转换后的浮点型数据。

delphi常用函数大全

delphi常用函数大全(转) Abort函数引起放弃的意外处理 Abs函数绝对值函数 AddExitProc函数将一过程添加到运行时库的结束过程表中 Addr函数返回指定对象的地址 AdjustLineBreaks函数将给定字符串的行分隔符调整为CR/LF序列Align属性使控件位于窗口某部分 Alignment属性控件标签的文字位置 AllocMem函数在堆栈上分配给定大小的块 AllowGrayed属性允许一个灰度选择 AnsiCompareStr函数比较字符串(区分大小写) AnsiCompareText函数比较字符串(不区分大小写) AnsiLowerCase函数将字符转换为小写 AnsiUpperCase函数将字符转换为大写 Append函数以附加的方式打开已有的文件 ArcTan函数余切函数 AssignFile函数给文件变量赋一外部文件名 Assigned函数测试函数或过程变量是否为空 AutoSize属性自动控制标签的大小 BackgroundColor属性背景色 BeginThread函数以适当的方式建立用于内存管理的线程 BevelInner属性控件方框的内框方式 BevelOuter属性控件方框的外框方式 BevelWidth属性控件方框的外框宽度 BlockRead函数读一个或多个记录到变量中 BlockWrite函数从变量中写一个或多个记录 BorderStyle属性边界类型 BorderWidth属性边界宽度 Break命令终止for、while、repeat循环语句 Brush属性画刷 Caption属性标签文字的内容 ChangeFileExt函数改变文件的后缀 ChDir函数改变当前目录 Checked属性确定复选框选中状态 Chr函数返回指定序数的字符 CloseFile命令关闭打开的文件 Color属性标签的颜色 Columns属性显示的列数 CompareStr函数比较字符串(区分大小写) Concat函数合并字符串 Continue命令继续for、while、repeat的下一个循环 Copy函数返回一字符串的子串 Cos函数余弦函数 Ctl3D属性是否具有3D效果 Cursor属性鼠标指针移入后的形状 Date函数返回当前的日期 DateTimeToFileDate函数将DELPHI的日期格式转换为DOS的日期格式DateTimeToStr函数将日期时间格式转换为字符串DateTimeToString函数将日期时间格式转换为字符串 DateToStr函数将日期格式转换为字符串

delphi考试试题

1、简述面向对象技术中“类”与“对象”的概念。结合Delphi中使用的组件,举例说明什么是类、什么是对象。 类是对象的抽象及描述,它是具有统一属性和方法的一类对象的统一描述体,是用来定义某类对象共有属性和方法的模板。而对象是类的实例。 在Delphi环境中,组件板上的组件就是类的概念,例如按钮组件就是按钮类。而用户在窗体上创建的一个按钮就是对象的概念(按钮对象)。用户可以在窗体上用按钮类创建若干个按钮对象,它们都是按钮类的实例。 2、在Delphi中,什么是对象的属性、方法和事件? 一个对象是由属性、方法和事件所组成。属性表示对象中的数据,方法是对象能够执行的动作,事件是能够引起对象反应的条件。 3、简述利用Delphi开发一个项目的基本步骤。 ●建立一个新的项目 ●建立窗体 ●在窗体上加入对象 ●检查和设定对象属性 ●编写对象的事件处理程序 ●编译、试运行,并进行代码调试 保存项目文件,退出Delphi 环境 4、在一个单元中,全局变量和局部变量的含义是什么?说明在单元文件中如何定义这两种变量(可举例说明)。 局部变量只能在定义它的程序块中使用,且其生命周期也只存在于从程序块开始执行到程序块执行结束。在一个事件处理程序中的变量说明部分,能够定义一个局部变量,供该事件处理程序内部使用。 而全局变量可以在单元中的各程序块中使用(共享),且生命周期存在于整个单元代码的活动期中。 在Implementation保留字后(但不要在程序块里)定义的变量就是全局变量。 选择题1、下列哪些条目可作为Delphi的变量名,哪些不行,并说明原因。 abc 123 abc123 123abc file a! 合法的变量名是:abc abc123 选择题7、如果想查看showmessage过程的帮助信息,请你说出两种获取帮助信息的方式。 ①通过主菜单Help的Delphi Help命令调出帮助主页面,在“索引”页输入框中输入要查找的showmessage单词,即可找出相关的帮助信息。 ②在代码中如果调用了showmessage过程,可将光标置于该单词中,然后按F1键,即可找出该过程的帮助信息。 选择题2、一个项目由一组文件组成。其中一些主要文件的后缀有: .dpr .pas .dfm .dcu .~dpr .~pas .~dfm 等 请说出这些文件的中文名称及用途。 答:.dpr 项目文件,存放项目的主程序 .pas 单元文件,存放源代码,如事件处理程序等。 .dfm 窗体文件,数据文件,记录窗体上的数据信息(如组件位置等) .dcu 目标文件,保存.pas编译后得到的结果。

Delphi函数大全

Delphi函数大全 首部function Languages: TLanguages; $[ 功能返回系统语言对象 说明通过此函数可以得到系统的语言环境 参考type 例子 12a12c12a12c. 参考 例子:= IsValidIdent; ━━━━━━━━━━━━━━━━━━━━━ 首部function IntToStr(Value: Integer): string; overload; $[ 首部function IntToStr(Value: Int64): string; overload; $[ 功能返回整数Value转换成字符串 说明Format('%d', [Value]) 参考function 例子:= IntToStr; ━━━━━━━━━━━━━━━━━━━━━ 首部function IntToHex(V alue: Integer; Digits: Integer): string; overload; $[ 首部function IntToHex(V alue: Int64; Digits: Integer): string; overload; $[ 功能返回整数Value转换成十六进制表现结果;Format('%.*x', [Digits, Value]) 说明参数Digits指定字符最小宽度;最小宽度不足时将用0填充 参考function 例子:= IntToHex, ; ━━━━━━━━━━━━━━━━━━━━━ 首部function StrToInt(const S: string): Integer; $[ 功能返回字符串S转换成整数 说明字符串非整数表达时将引起异常 参考procedure 例子:= StrToInt; ━━━━━━━━━━━━━━━━━━━━━ 首部function StrToIntDef(const S: string; Default: Integer): Integer; $[ 功能返回字符串S转换成整数 说明字符串非整数表达时则返回默认值Default 参考procedure 例子:= StrToIntDef, 0); ━━━━━━━━━━━━━━━━━━━━━ 首部function TryStrToInt(const S: string; out Value: Integer): Boolean; $[ 功能返回字符串S转换成整数V alue是否成功 说明字符串非整数表达时返回False并且Value将输出为0 参考procedure 例子 ..);打开失败则返回负数 参考function

Delphi面试题

Delphi面试题 第一部分Delphi知识1. 如果一个元件希望放到IDE的元件面板上,它必须从________类派生,如果一个元件能作为其它元件的容器,它必须从_____________类派生,如果一个元件在运行时可见,它必须从___________________类派生(A)TGraphicControl (B)TWinContr 1.您为什么选择软件开发这个行业?(30字左右简写); 2.如果有您解决不了的软件问题您会采取什么样的解决措施; 3.a.请您写出Object Pascal所支持的数据类型;b.请您写出Shl、Shr、Xor、Not 的数学表示法; 4.请您写出VCL结构层次(以TObject开始,最少五层);5 二.是非题(共20道)1.从主菜单上选择Project|Syntax Check 菜单选项,Delphi将编译从上次编译后有改动的任何单元,并报出遇到的错误。()2.Delphi的VCL对象有些是指针,从堆栈中分配空间,有些则不是。()3.粘贴时,如果作为容器的组件已被选择,剪贴 1、rtl70.bpl是什么?有什么用? 2、delphi的Package相对dll有什么优点? 3、以下的记录(结构)变量在内存占多少字节?type a = packed record v1: Byte; v2: Word; v3: string[16]; v4: Double; v5: string; v6: TForm; end; 4、以下的写法是否正确?

type a 一.选择题(共40道)1.用户开发程序时需要经常在窗体和编辑器窗口之间来回切换,可使用快捷键()。A、F12和F11 B、F12和F13 C、F12和Ctrl+F12 D、F12和Alt+F12 E、F12和Shift+F12 2.某函数如下:Function check(n,k:Integer):Integer; Var m:Integer; Beg 一、Delphi基础1、Delphi 内置类型string 和WideString 的区别。2、简要描述Delphi代码单元中,以下关键字的作用。interface:implementation:initialization:finalization:3、将一周七天声明成枚举类型。4、现有Integer 变量A、B,在不声明其

大数据时代的具体例子

大数据时代,几个例子告诉你什么是大数据 工具类厂商蓄意炒作大数据,以达到售卖产品的目的,但导致的结果是很多人对大数据这一概念云里雾里。实际上,大数据就发生在你我身边,虽然你看不到它,但它却时时影响着我们的生活。 现阶段,和大数据相关的企业有三种。一种是工具类公司,他们宣传得最卖力,并且把大数据吹出了泡沫,原因是它们希望把自己的产品卖给企业;一种是依托于大数据从事咨询服务类的企业;还有一种就是实实在拥有大数据的公司,它们和我们休戚相关,也就是下面的小故事所要阐述的内容。 第一个故事,百货公司知道女孩怀孕 美国的Target百货公司上线了一套客户分析工具,可以对顾客的购买记录进行分析,并向顾客进行产品推荐。一次,他们根据一个女孩在Target连锁店中的购物记录,推断出这一女孩怀孕,然后开始通过购物手册的形式向女孩推荐一系列孕妇产品。这一作法让女孩的家长勃然大怒,事实真相是女孩隐瞒了怀孕消息。 点评:看似杂乱无章的购买清单,经过对比发现其中的规律和不符合常规的数据,往往能够得出一些真实的结论。这就是大数据的应用。 第二个故事,搜狗热词里的商机 王建锋是某综合类网站的编辑,基于访问量的考核是这个编辑每天都要面对的事情。但在每年的评比中,他都号称是PV王。原来他的秘密就是只做热点新闻。王建锋养成了看百度搜索风云榜和搜狗热搜榜的习惯,所以,他会优先挑选热情榜上的新闻事件来编辑整理,关注的人自然多。 点评:搜狗拥有输入法,搜索引擎,那些在输入法和搜索引擎上反复出现的热词,就是搜狗热搜榜的来源。通过对海量词汇的对比,找出哪些是网民关注的。这就是大数据的应用。 第三个故事,阿里云知道谁需要贷款 这是阿里人讲述的一个故事。每天,海量的交易和数据在阿里的平台上跑着,阿里通过对商户最近100天的数据分析,就能知道哪些商户可能存在资金问题,此时的阿里贷款平台就有可能出马,同潜在的贷款对象进行沟通。 点评:通常来说,数据比文字更真实,更能反映一个公司的正常运营情况。通过海量的分析得出企业的经营情况,这就是大数据的应用。 第四个故事,中移动挽留流失客户 iPhone进入中国后,铁杆的移动用户王永铭加入了联通合约机大军。由于合约机承担了大量通话内容,王永铭将全球通换成了动感地带。三个月之后,王永铭接到了中国移动的10086电话,向他介绍中移动的优惠资费活动。一位移动的

Delphi程序设计复习题

《Delphi程序设计》复习题 一、单项选择题 1、下面哪句话对Delphi的描述是正确的()。 A.只能用于数据库客户端开发的工具B.Delphi的编程语言全部是面向过程的C.Delphi的编程语言是Java D.面向对象的可视化的开发环境 2、在Delphi中,建立一个文本编辑区域,可采用下列()。 A、命令按钮 B、文本标签控件 C、Edit控件 D、Timer控件 3、表达式60 +19 div 2 的值是() A.67 B.79 C.69 D.80 4、一个Delphi应用程序必有一个()文件和至少一个单元文件。 A) 执行程序B) 项目C) 数据D)图形 5、最适合于在工具栏上放置的工具按钮是() A.Button B.RadioButton C.SpeedButton D.BitBtm 6、Delphi应用程序设计基于()语言。 A) Basic B) C++ C) Pascal D) Object Pascal 7、下列表达式中()不是布尔表达式。 A) A=3 B) A div B C) A and B D) A>B 8、“x 是小于100的非负数”的Object Pascal表达式是()。 A.0 ≤x < 100 B.x >= 0, x<100 C.(x >=0) AND (x < 100) D.(x >= 0 ) OR (x<100) 9、利用Image对象的哪个属性设置,可以使加载的图像自动放大或缩小,以适应Image的显示区域() A.Stretch B.AutoSize C.Align D.Center 10、工具栏上的一个SpeedButton按钮如果要设置为状态按钮,则正确设置的方法是() A.将SpeedButton按钮的GroupIndex属性设置为0,且AllowAllUp属性设置为True。 B.将SpeedButton按钮的GroupIndex属性设置为0,且AllowAllUp属性设置为False。 C.将SpeedButton按钮的GroupIndex属性设置为非0值,且AllowAllUp属性设置为True。 D.将SpeedButton按钮的GroupIndex属性设置为非0值,且AllowAllUp属性设置为False。 11、要改变一个对象的高度,应使用属性()。 A、Font B、ForcColor C、Name D、Height 12、表达式30 +19 div 2 的值是() A.37 B.49 C.39 D.40 13、下列合法的变量名是()。 A、na + e B、e- 3r C、r_3 D、5we

delphi程序试题答案

一、单选题 1.在RadioGroup 组件中有 4 个单选框,当选中第 2 个单选框时,RadioGroup 组件中的ItemIndex 属性值应为( B )。 A.0 B.1 C.2 D.3 2.函数和过程的区别为( A )。 A.函数执行后返回一个值,而过程不需返回值 B.过程执行后返回一个值,而函数不需返回值 C.过程在被调用时,能执行某种特殊功能并能返回到调用它的地方 D.函数在被调用时,能执行某种特殊功能并能返回到调用它的地方 3.32 AND 27 的值是( B )。 A.59 B.0 C.27 D.32 4.窗体与数据模块的扩展名是( B )。 A..dcu B..dfm C..pas D..dpr 5.Delphi 中用什么函数来析构一个组件( C )。 A.Constructor B.Destroy C.Free D.Create 6.一个指针变量ptr 的域成员fs 访问的方法是( C )。 A.ptr->fs B.ptr.fs C.ptr^fs D.ptr@fs 7.Type aarrays=[1…8,1…5] of integer ,该类型定义了多少个下标元素( D )。 A.45 B.54 C.48 D.40 8.Delphi 的所有类都是从什么类继承下来的( B )。 A.Tcomponent B.Tobject C.Tstream D.Tnull 9.定义构造函数时用到的保留字是( C )。 A.Class B..implementation C.create D.construction 10.下列组件中属于可视组件的是哪一个( D )。 A.Tdatasource B.Topendialog C.Ttable D.Tscrollbar 11.设有过程procedure pro(V AR x,y:integer); 变量a , b 为整型变量,其值分别为5、6,则合法的过程调用语句是( D )。 A.Pro(5,6) B.pro(5,b) C.pro(a,6) D.pro(a,b) 12.下列组件中不能获取焦点的是( B )。 A.Tedit B.Tlabel C.Trichedit D.Ttreeview 13.定义抽象类必须使用的指令字是( A )。 A.Abstract B.virtual C.dynamic D.override” 14.Delphi是哪个公司的产品( C )。 A.Microsoft B.IBM C.Borland D.DOM 15.窗体上放置有一个TEdit类控件Edit1,当在Edit1中按下‘A’键时触发的事件和事件顺序是( A )。 A.OnKeyDown->OnKeyPress->OnKeyUp B.OnKeyDown->OnKeyUp C.OnKeyPress D.OnKeyDown->OnKeyUp->OnKeyPress 二、判断题 1.Pascal 语言中可以把一个实数赋值给一个整型变量,系统会自动取整。(错) 2.所有类都有Name属性。(错) 3.variant类型的变量被动态赋值为一个特定的数据类型后,不能再赋值为一个其它的数据类型。(错) 4.函数MessageDlgPos与MessageDlg极为相似,只是MessageDlgPos函数能够控制信息对话框的出现位置。(对)5.BitBtn控件可以用来制作一个带图片的按钮,而SpeedButton则不能。(错) 6.MediaPlayer控件的AutoEnable属性是用来控制该控件是否可用。(错) 7.图形组件没有输入焦点,不能接受用户的输入,它只具有向用户显示的功能。(对) 8.Timer组件常称为“定时器”,它每隔固定的时间间隔可以触发一个OnTimer事件。(对) 9.Tobject是delphi的基类,系统中的每一个类都是Tobject的子类。(对) 10.在MDI应用程序窗口中,如果将一个窗体设为父穷窗体,要将它的FormStyle属性设为FsStayOnTop。(错)

(DELPHI)API函数大全

(DELPHI)API函数大全 1. API之网络函数 WNetAddConnection 创建同一个网络资源的永久性连接WNetAddConnection2 创建同一个网络资源的连接WNetAddConnection3 创建同一个网络资源的连接WNetCancelConnection 结束一个网络连接 WNetCancelConnection2 结束一个网络连接 WNetCloseEnum 结束一次枚举操作 WNetConnectionDialog 启动一个标准对话框,以便建立同网络资源的连接WNetDisconnectDialog 启动一个标准对话框,以便断开同网络资源的连接WNetEnumResource 枚举网络资源 WNetGetConnection 获取本地或已连接的一个资源的网络名称WNetGetLastError 获取网络错误的扩展错误信息WNetGetUniversalName 获取网络中一个文件的远程名称以及/或者UNC (统一命名规范)名称 WNetGetUser 获取一个网络资源用以连接的名字 WNetOpenEnum 启动对网络资源进行枚举的过程 2. API之消息函数 BroadcastSystemMessage 将一条系统消息广播给系统中所有的顶级窗口GetMessagePos 取得消息队列中上一条消息处理完毕时的鼠标指针屏幕位置GetMessageTime 取得消息队列中上一条消息处理完毕时的时间PostMessage 将一条消息投递到指定窗口的消息队列PostThreadMessage 将一条消息投递给应用程序RegisterWindowMessage 获取分配给一个字串标识符的消息编号ReplyMessage 答复一个消息 SendMessage 调用一个窗口的窗口函数,将一条消息发给那个窗口SendMessageCallback 将一条消息发给窗口 SendMessageTimeout 向窗口发送一条消息 SendNotifyMessage 向窗口发送一条消息 3. API之文件处理函数 CloseHandle 关闭一个内核对象。其中包括文件、文件映射、进程、线程、安全和同步对象等 CompareFileTime 对比两个文件的时间 CopyFile 复制文件 CreateDirectory 创建一个新目录 CreateFile 打开和创建文件、管道、邮槽、通信服务、设备以及控制台CreateFileMapping 创建一个新的文件映射对象 DeleteFile 删除指定文件

相关文档
最新文档