ilikenba 发表于 2005-6-7 17:38

[分享]Delphi试题51道

<P><FONT face="Times New Roman">1.dbExpress</FONT>组件访问数据库是通过哪种方式与特定的数据库连接的?(<FONT face="Times New Roman">C</FONT>)</P>
<P><FONT face="Times New Roman"><B>A. </B>BDE
<br></FONT>
<p>
<P><FONT face="Times New Roman">B.</FONT>其他三项都不是
<p>
<p>
<P><FONT face="Times New Roman">C.DbExpress</FONT>自己的数据库连接<FONT face="Times New Roman">DLL
<p></FONT>
<p>
<P><FONT face="Times New Roman">D.ODBC
<p></FONT>
<p>
<P><FONT face="Times New Roman">2.</FONT>在<FONT face="Times New Roman">try</FONT>语句中使用多个<FONT face="Times New Roman">except</FONT>语句可以处理多个不同的异常情况。(<FONT face="Times New Roman">A</FONT>)
<p>
<p>
<P><FONT face="Times New Roman">A.</FONT>错误
<p>
<p>
<P><FONT face="Times New Roman">B.</FONT>正确
<p>
<p>
<P><FONT face="Times New Roman">3.DWORD</FONT>,<FONT face="Times New Roman">UINT</FONT>,<FONT face="Times New Roman">HResult</FONT>以及<FONT face="Times New Roman">WinAPI</FONT>函数中各种<FONT face="Times New Roman">Handle</FONT>等于<FONT face="Times New Roman">Delphi6</FONT>中的哪种数据类型?(<FONT face="Times New Roman"> A</FONT>)
<p>
<p>
<P><FONT face="Times New Roman">A.LongWord
<p></FONT>
<p>
<P><FONT face="Times New Roman">B.UnsignedInt
<p></FONT>
<p>
<P><FONT face="Times New Roman">C.LongInt
<p></FONT>
<p>
<P><FONT face="Times New Roman">D.Word
<p></FONT>
<p>
<P><FONT face="Times New Roman">4.</FONT>窗体上放置有一个<FONT face="Times New Roman">TPanel</FONT>类的控件<FONT face="Times New Roman">Panel1</FONT>,并定义了<FONT face="Times New Roman">Panel1</FONT>的<FONT face="Times New Roman">OnEnter</FONT>事件,下面说法正确的是:(<FONT face="Times New Roman">C</FONT>)
<p>
<p>
<P><FONT face="Times New Roman">A.</FONT>当鼠标移动到<FONT face="Times New Roman">Panel1</FONT>上面时产生<FONT face="Times New Roman">Panel1OnEnter</FONT>事件
<p>
<p>
<P><FONT face="Times New Roman">B.</FONT>其他三项都不对
<p>
<p>
<P><FONT face="Times New Roman">C.</FONT>当<FONT face="Times New Roman">Panel1</FONT>获得焦点时产生<FONT face="Times New Roman">Panel1OnEnter</FONT>事件
<p>
<p>
<P><FONT face="Times New Roman">D.</FONT>当鼠标在窗体上移动时产生<FONT face="Times New Roman">Panel1OnEnter</FONT>事件
<p>
<p>
<P><FONT face="Times New Roman">5.</FONT>下面关于数据集<FONT face="Times New Roman">BookMark</FONT>的说法那个是正确的?(<FONT face="Times New Roman">A</FONT>)
<p>
<p>
<P><FONT face="Times New Roman">A.BookMark</FONT>类型的变量是一个对象指针,需要用<FONT face="Times New Roman">BookMark Create</FONT>来建立<FONT face="Times New Roman">BookMark</FONT>,用<FONT face="Times New Roman">BookMark.free</FONT>来释放
<p>
<p>
<P><FONT face="Times New Roman">B.BookMark</FONT>本质上是一条记录类型,无须建立和释放
<p>
<p>
<P><FONT face="Times New Roman">C.Delphi</FONT>中,一个数据集组件只能建立一个书签<FONT face="Times New Roman">BookMark
<p></FONT>
<p>
<P><FONT face="Times New Roman">6.</FONT>所有类都有<FONT face="Times New Roman">Name</FONT>属性(<FONT face="Times New Roman">A</FONT>)
<p>
<p>
<P><FONT face="Times New Roman">A.</FONT>错误
<p>
<p>
<P><FONT face="Times New Roman">B.</FONT>正确
<p>
<p>
<P><FONT face="Times New Roman">7.</FONT>一个<FONT face="Times New Roman">Delphi</FONT>窗体<FONT face="Times New Roman">Form1</FONT>中包含了一个<FONT face="Times New Roman">Tbutton</FONT>类的<FONT face="Times New Roman">Button1</FONT>控件,下面代码,将产生怎样的结果?(<FONT face="Times New Roman">D</FONT>)
<p>
<p>
<P><FONT face="Times New Roman">……
<p></FONT>
<p>
<P><FONT face="Times New Roman">Tform1.button1Click(Sender);
<p></FONT>
<p>
<P><FONT face="Times New Roman">begin
<p></FONT>
<p>
<P><FONT face="Times New Roman">Self.Caption:=’self’;
<p></FONT>
<p>
<P><FONT face="Times New Roman">Self.Color:=ClBlue;
<p></FONT>
<p>
<P><FONT face="Times New Roman">EventX(Sender);
<p></FONT>
<p>
<P><FONT face="Times New Roman">end;
<p></FONT>
<p>
<P><FONT face="Times New Roman">Tform1.EventX(Sender:TObject);
<p></FONT>
<p>
<P><FONT face="Times New Roman">begin
<p></FONT>
<p>
<P><FONT face="Times New Roman">Sender.Tag:=10;
<p></FONT>
<p>
<P><FONT face="Times New Roman">end;
<p></FONT>
<p>
<P><FONT face="Times New Roman">A.</FONT>窗体的标题为<FONT face="Times New Roman">Self</FONT>,颜色为蓝色,窗体的<FONT face="Times New Roman">Tag</FONT>属性等于<FONT face="Times New Roman">10
<p></FONT>
<p>
<P><FONT face="Times New Roman">B.Button1</FONT>的标题为<FONT face="Times New Roman">Self</FONT>,颜色为蓝色,<FONT face="Times New Roman">Tag</FONT>属性等于<FONT face="Times New Roman">10
<p></FONT>
<p>
<P><FONT face="Times New Roman">C.Button1</FONT>的标题为<FONT face="Times New Roman">Self</FONT>,颜色为蓝色,窗体的<FONT face="Times New Roman">Tag</FONT>属性等于<FONT face="Times New Roman">10
<p></FONT>
<p>
<P><FONT face="Times New Roman">D.</FONT>窗体的标题为<FONT face="Times New Roman">Self</FONT>,颜色为蓝色,<FONT face="Times New Roman">Button</FONT>的<FONT face="Times New Roman">Tag</FONT>属性等于<FONT face="Times New Roman">10
<p></FONT>
<p>
<P><FONT face="Times New Roman">8.</FONT>在多个应用程序访问同一个<FONT face="Times New Roman">DLL</FONT>时,下面关于<FONT face="Times New Roman">DLL</FONT>中使用全局变量的说法哪个是正确的?(<FONT face="Times New Roman">C</FONT>)
<p>
<p>
<P><FONT face="Times New Roman">A.</FONT>每个应用程序都各自使用在他自己的进程空间内复制的一份该全局变量
<p>
<p>
<P><FONT face="Times New Roman">B.</FONT>全局变量在<FONT face="Times New Roman">DLL</FONT>中是不允许使用的
<p>
<p>
<P><FONT face="Times New Roman">C.</FONT>每个应用程序访问的是同一个全局变量,该全局变量的有引用计数。
<p>
<p>
<P><FONT face="Times New Roman">9. </FONT>窗体上放置有一个<FONT face="Times New Roman">TEdit</FONT>类控件<FONT face="Times New Roman">Edit1</FONT>,当在<FONT face="Times New Roman">Edit1</FONT>中按下‘<FONT face="Times New Roman">A</FONT>’键时触发的事件和事件顺序是:(<FONT face="Times New Roman">OnKeyPress-&gt;OnKeyDown</FONT>)可以自己试一下
<p>
<p>
<P><FONT face="Times New Roman">A.OnKeyDown-&gt;OnKeyPress-&gt;OnKeyUp
<p></FONT>
<p>
<P><FONT face="Times New Roman">B.OnKeyDown-&gt;OnKeyUp
<p></FONT>
<p>
<P><FONT face="Times New Roman">C.OnKeyPress
<p></FONT>
<p>
<P><FONT face="Times New Roman">D.OnKeyDown-&gt;OnKeyUp-&gt;OnKeyPress
<p></FONT>
<p>
<P><FONT face="Times New Roman">10.</FONT>下面方法中,哪个是正确的移动<FONT face="Times New Roman">TDataSet</FONT>的记录光标位置的方法?(<FONT face="Times New Roman">A</FONT>)
<p>
<p>
<P><FONT face="Times New Roman">A .(Sender As TDataSet).Moveby(10)
<p></FONT>
<p>
<P><FONT face="Times New Roman">B.(Sender As TDataSet).Moveto(10)
<p></FONT>
<p>
<P><FONT face="Times New Roman">C.(Sender As TDataSet).Move(10)
<p></FONT>
<p>
<P><FONT face="Times New Roman">D.(Sender As TDataSet).MoveToCursor(10)
<p></FONT>
<p>
<P><FONT face="Times New Roman">11.</FONT>关于记录与类的说法错误的是:(<FONT face="Times New Roman">C</FONT>)
<p>
<p>
<P><FONT face="Times New Roman">A.</FONT>记录没有继承关系,而类有
<p>
<p>
<P><FONT face="Times New Roman">B.</FONT>不能自动对记录的域初始化
<p>
<p>
<P><FONT face="Times New Roman">C.</FONT>类可以使用<FONT face="Times New Roman">with</FONT>语句而记录不能
<p>
<p>
<P><FONT face="Times New Roman">D.</FONT>记录没有任何保密性,所有细节从外部都是可见的,或者说是公用的。
<p>
<p>
<P><FONT face="Times New Roman">12.</FONT>以下不合法的数组是:(<FONT face="Times New Roman">A</FONT>)
<p>
<p>
<P><FONT face="Times New Roman">A.arr:Array of Class
<p></FONT>
<p>
<P><FONT face="Times New Roman">B.arr:Array of TButton
<p></FONT>
<p>
<P><FONT face="Times New Roman">C.arr:Array of byte
<p></FONT>
<p>
<P><FONT face="Times New Roman">D.arr:Array of string
<p></FONT>
<p>
<P><FONT face="Times New Roman">13.</FONT>下列关于<FONT face="Times New Roman">dfm</FONT>文件的一些说明哪个是正确的?(<FONT face="Times New Roman">C</FONT>)
<p>
<p>
<P><FONT face="Times New Roman">A.dfm</FONT>文件中包含了对应<FONT face="Times New Roman">Pascal</FONT>单元文件的编译后中间代码
<p>
<p>
<P><FONT face="Times New Roman">B.dfm</FONT>文件是文本文件,用于保存编译器需要用到的<FONT face="Times New Roman">Pascal</FONT>文件的符号表
<p>
<p>
<P><FONT face="Times New Roman">C.dfm</FONT>文件保存着一个窗体和窗体拥有的对象的<FONT face="Times New Roman">Published</FONT>属性
<p>
<p>
<P><FONT face="Times New Roman">D.dfm</FONT>文件是编译时产生的符号表,是为了使优化提高编译速度而产生的。
<p>
<p>
<P><FONT face="Times New Roman">14.</FONT>请判断下列代码在程序关闭时,正确的对象释放顺序(<FONT face="Times New Roman">B</FONT>)
<p>
<p>
<P><FONT face="Times New Roman">TMybutton=class(Tbutton)
<p></FONT>
<p>
<P><FONT face="Times New Roman">Protected
<p></FONT>
<p>
<P><FONT face="Times New Roman">  Destructor Destroy;override;
<p></FONT>
<p>
<P><FONT face="Times New Roman">End;
<p></FONT>
<p>
<P><FONT face="Times New Roman">………….
<p></FONT>
<p>
<P><FONT face="Times New Roman">destructor TMyButton.Destroy;
<p></FONT>
<p>
<P><FONT face="Times New Roman">  Begin
<p></FONT>
<p>
<P><FONT face="Times New Roman">inherited;
<p></FONT>
<p>
<P><FONT face="Times New Roman">Application.MessageBox(PChar(Name),’Destroy’,mb_ok);
<p></FONT>
<p>
<P><FONT face="Times New Roman">  end;
<p></FONT>
<p>
<P><FONT face="Times New Roman">var AButton,BButton:TMyButton;
<p></FONT>
<p>
<P><FONT face="Times New Roman">procedure TForm1.FormCreate(Sender:TObject);
<p></FONT>
<p>
<P><FONT face="Times New Roman">begin
<p></FONT>
<p>
<P><FONT face="Times New Roman">  Abutton:=TmyButton.Create(Nil);
<p></FONT>
<p>
<P><FONT face="Times New Roman">  With AButton do
<p></FONT>
<p>
<P><FONT face="Times New Roman">  begin
<p></FONT>
<p>
<P><FONT face="Times New Roman">Parent:=form1;
<p></FONT>
<p>
<P><FONT face="Times New Roman">Top:=100;
<p></FONT>
<p>
<P><FONT face="Times New Roman">Left:=100;
<p></FONT>
<p>
<P><FONT face="Times New Roman">Visible:=True;
<p></FONT>
<p>
<P><FONT face="Times New Roman">Name:=’ABtn’;
<p></FONT>
<p>
<P><FONT face="Times New Roman">  end;
<p></FONT>
<p>
<P><FONT face="Times New Roman">  BButton:=TMyButton.Create(Application);
<p></FONT>
<p>
<P><FONT face="Times New Roman">  With BButton do
<p></FONT>
<p>
<P><FONT face="Times New Roman">  begin
<p></FONT>
<p>
<P><FONT face="Times New Roman">Parent:=Form1;
<p></FONT>
<p>
<P><FONT face="Times New Roman">Top:=100;
<p></FONT>
<p>
<P><FONT face="Times New Roman">Left:=200;
<p></FONT>
<p>
<P><FONT face="Times New Roman">Visible:=True;
<p></FONT>
<p>
<P><FONT face="Times New Roman">Name:=’BBtn’;
<p></FONT>
<p>
<P><FONT face="Times New Roman">  end;
<p></FONT>
<p>
<P><FONT face="Times New Roman">procedure TForm1.FormDestroy(Sender:TObject);
<p></FONT>
<p>
<P><FONT face="Times New Roman">begin
<p></FONT>
<p>
<P><FONT face="Times New Roman">  ……
<p></FONT>
<p>
<P><FONT face="Times New Roman">end;
<p></FONT>
<p>
<P><FONT face="Times New Roman">A.BButton.Destroy-&gt;Form1.Destroy-&gt;AButton.Destroy
<p></FONT>
<p>
<P><FONT face="Times New Roman">B.</FONT>上述都不对,应该手工调用<FONT face="Times New Roman">Abutton.free</FONT>,否则会造成<FONT face="Times New Roman">AButton</FONT>没有释放的错误
<p>
<p>
<P><FONT face="Times New Roman">C.Form1.Destroy-&gt;AButton.Destroy-&gt;BButton.Destroy
<p></FONT>
<p>
<P><FONT face="Times New Roman">D.AButton.Destroy-&gt;Form1.Destroy-&gt;BButton.Destroy
<p></FONT>
<p>
<P><FONT face="Times New Roman">15.</FONT>已知有说明<FONT face="Times New Roman">var s:sting;</FONT>下列程序段中的错误为:
<p>
<p>
<P><FONT face="Times New Roman">case s of
<p></FONT>
<p>
<P><FONT face="Times New Roman">‘book_A’:processSelectionA;
<p></FONT>
<p>
<P><FONT face="Times New Roman">‘book_B’:processSelectionB;
<p></FONT>
<p>
<P><FONT face="Times New Roman">‘book_C’:processSelectionC;
<p></FONT>
<p>
<P><FONT face="Times New Roman">end; </FONT>()
<p>
<p>
<P><FONT face="Times New Roman">A.</FONT>用字符串作为<FONT face="Times New Roman">Case</FONT>值表元素
<p>
<p>
<P><FONT face="Times New Roman">B.case</FONT>表达式中有常数
<p>
<p>
<P><FONT face="Times New Roman">C.case</FONT>常量和<FONT face="Times New Roman">case</FONT>值表元素
<p>
<p>
<P><FONT face="Times New Roman">D.case</FONT>表达式位关系表达式
<p>
<p>
<P>这道题我不知道它要说什么……<FONT face="Times New Roman">Case String of </FONT>这个语法本身就是错误的!
<p>
<p>
<P><FONT face="Times New Roman">Case … of </FONT>中间的条件只能是整型,集合,枚举类型
<p>
<p>
<P><FONT face="Times New Roman">16.</FONT>“工程选项对话框”中,当默认的<FONT face="Times New Roman">checkbox</FONT>位<FONT face="Times New Roman">True</FONT>时,会出现下面那种情况?(<FONT face="Times New Roman">D</FONT>)
<p>
<p>
<P><FONT face="Times New Roman">A.Delphi</FONT>把所有的工程选项都重置为最初的默认值
<p>
<p>
<P><FONT face="Times New Roman">B.</FONT>“工程选项“值覆盖“环境选项”值
<p>
<p>
<P><FONT face="Times New Roman">C.</FONT>当前被选页上所有<FONT face="Times New Roman">checkbox</FONT>的属性都自动变成为<FONT face="Times New Roman">True
<p></FONT>
<p>
<P><FONT face="Times New Roman">D.</FONT>当前的工程选项作为新创建的工程的默认值
<p>
<p>
<P><FONT face="Times New Roman">17</FONT>.<FONT face="Times New Roman">XML</FONT>的含义是什么?(<FONT face="Times New Roman">B</FONT>)
<p>
<p>
<P><FONT face="Times New Roman">A.Express Manage Language
<p></FONT>
<p>
<P><FONT face="Times New Roman">B.Extensible Markup Language
<p></FONT>
<p>
<P><FONT face="Times New Roman">18.</FONT>下面关于单元的初始化<FONT face="Times New Roman">Initialization</FONT>部分的说法哪一个是正确的?(<FONT face="Times New Roman">B</FONT>)
<p>
<p>
<P><FONT face="Times New Roman">A.</FONT>如果调用了<FONT face="Times New Roman">Initialization,</FONT>必须调用<FONT face="Times New Roman">Finalization
<p></FONT>
<p>
<P><FONT face="Times New Roman">B.</FONT>该部分代码单元被其他单元或程序引用时就会自动运行
<p>
<p>
<P><FONT face="Times New Roman">C.</FONT>这部分代码与单元中的<FONT face="Times New Roman">FormCreate</FONT>事件的作用是相同的
<p>
<p>
<P><FONT face="Times New Roman">D.</FONT>初始化部分的代码只能在单元中有<FONT face="Times New Roman">OLE</FONT>和<FONT face="Times New Roman">COM</FONT>对象时才有效
<p>
<p>
<P><FONT face="Times New Roman">19.</FONT>以下关于<FONT face="Times New Roman">Redcord(</FONT>记录<FONT face="Times New Roman">)</FONT>的描述,不正确的是:(<FONT face="Times New Roman">B</FONT>)
<p>
<p>
<P><FONT face="Times New Roman">A.Object Pascal</FONT>支持可变<FONT face="Times New Roman">Record,</FONT>它允许在记录种不同的数据共同覆盖相同的内存(这个概念与<FONT face="Times New Roman">C/C++</FONT>中的<FONT face="Times New Roman">union</FONT>概念一样)
<p>
<p>
<P><FONT face="Times New Roman">B.Record</FONT>类型定义中列出了若干个域,每个域对应一个域名,通过域名访问
<p>
<p>
<P><FONT face="Times New Roman">C.Record</FONT>类型用于定义不同类型数据项的固定集合<br><FONT face="Times New Roman">D.record</FONT>类型是类的一种补充
<p>
<p>
<P><FONT face="Times New Roman">20.</FONT>在每一个枚举类型中,默认编译的情况下,我们最多只能定义(<FONT face="Times New Roman">D</FONT>)个值。
<p>
<p>
<P><FONT face="Times New Roman">A.64
<p></FONT>
<p>
<P><FONT face="Times New Roman">B.512
<p></FONT>
<p>
<P><FONT face="Times New Roman">C.128
<p></FONT>
<p>
<P><FONT face="Times New Roman">D.255
<p></FONT>
<p>
<P><FONT face="Times New Roman">21.</FONT>用于建立菜单项的下划线快捷方式的字符是:(<FONT face="Times New Roman">C</FONT>)
<p>
<p>
<P><FONT face="Times New Roman">A.^<br>B.#
<p></FONT>
<p>
<P><FONT face="Times New Roman">C.&amp;
<p></FONT>
<p>
<P><FONT face="Times New Roman">D.@
<p></FONT>
<p>
<P><FONT face="Times New Roman">22.</FONT>下列关于<FONT face="Times New Roman">Variant</FONT>类型的说法哪个是不正确的?(<FONT face="Times New Roman">A</FONT>)
<p>
<p>
<P><FONT face="Times New Roman">A.variant</FONT>类型的变量被动态赋值为一个特定的数据类型后,不能再赋值为一个其它的数据类型
<p>
<p>
<P><FONT face="Times New Roman">B.variant</FONT>类型变量是无类型变量
<p>
<p>
<P><FONT face="Times New Roman">C.variant</FONT>类型是以前<FONT face="Times New Roman">Borland C++ </FONT>中固有的<FONT face="Times New Roman">Variant</FONT>类型的模仿
<p>
<p>
<P><FONT face="Times New Roman">D.variant</FONT>类型无需进行释放,回收内存
<p>
<p>
<P><FONT face="Times New Roman">23.</FONT>关于<FONT face="Times New Roman">Application</FONT>对象和属性的描述正确的是:(<FONT face="Times New Roman">B</FONT>)
<p>
<p>
<P><FONT face="Times New Roman">A.ExeName</FONT>可读可写
<p>
<p>
<P><FONT face="Times New Roman">B.Active</FONT>表明应用程序是否激活,可以设置该值来激活程序
<p>
<p>
<P><FONT face="Times New Roman">C.Title</FONT>属性设置主程序窗口的标题
<p>
<p>
<P><FONT face="Times New Roman">D.</FONT>只有给予窗体的应用程序才有全局<FONT face="Times New Roman">Application</FONT>对象,控制台没有<FONT face="Times New Roman">Application</FONT>对象
<p>
<p>
<P><FONT face="Times New Roman">24.</FONT>下列哪种变量类型不能作为<FONT face="Times New Roman">For</FONT>循环中的循环变量?(<FONT face="Times New Roman">D</FONT>)
<p>
<p>
<P><FONT face="Times New Roman">A.</FONT>字符
<p>
<p>
<P><FONT face="Times New Roman">B.</FONT>枚举
<p>
<p>
<P><FONT face="Times New Roman">C.</FONT>子界
<p>
<p>
<P><FONT face="Times New Roman">D.</FONT>实数
<p>
<p>
<P><FONT face="Times New Roman">25.</FONT>下面是一个用户自定义的消息,哪一种消息定义是正确的?(<FONT face="Times New Roman">D</FONT>)
<p>
<p>
<P><FONT face="Times New Roman">A.WM_MyMessage=User_Base+100
<p></FONT>
<p>
<P><FONT face="Times New Roman">B.WM_MyMessage=CM_Base+100
<p></FONT>
<p>
<P><FONT face="Times New Roman">C.WM_MyMessage=WM_Base+100
<p></FONT>
<p>
<P><FONT face="Times New Roman">D.WM_MyMessage=WM_USER+100
<p></FONT>
<p>
<P><FONT face="Times New Roman">26.</FONT>请看代码,回答下面的问题。
<p>
<p>
<P><FONT face="Times New Roman">Type
<p></FONT>
<p>
<P><FONT face="Times New Roman">TMammal=Class
<p></FONT>
<p>
<P><FONT face="Times New Roman">Procedure Walk;
<p></FONT>
<p>
<P><FONT face="Times New Roman">…..
<p></FONT>
<p>
<P><FONT face="Times New Roman">end;{end of TManmml}
<p></FONT>
<p>
<P><FONT face="Times New Roman">procedure TMammal.Walk;
<p></FONT>
<p>
<P><FONT face="Times New Roman">begin
<p></FONT>
<p>
<P><FONT face="Times New Roman">ShowMessage(‘Result is Mammal Walk’);
<p></FONT>
<p>
<P><FONT face="Times New Roman">end;
<p></FONT>
<p>
<P><FONT face="Times New Roman">TDog=Class(TMammal)
<p></FONT>
<p>
<P><FONT face="Times New Roman">Procedure Walk;
<p></FONT>
<p>
<P><FONT face="Times New Roman">end;
<p></FONT>
<p>
<P><FONT face="Times New Roman">procedure TDog.Walk;
<p></FONT>
<p>
<P><FONT face="Times New Roman">begin
<p></FONT>
<p>
<P><FONT face="Times New Roman">ShowMessage(‘Result is Dog Walk’);
<p></FONT>
<p>
<P><FONT face="Times New Roman">end;
<p></FONT>
<p>
<P><FONT face="Times New Roman">var
<p></FONT>
<p>
<P><FONT face="Times New Roman">Mammal:TMammal;
<p></FONT>
<p>
<P><FONT face="Times New Roman">  dog:TDog;
<p></FONT>
<p>
<P><FONT face="Times New Roman">begin
<p></FONT>
<p>
<P><FONT face="Times New Roman">  Mammal:=TDog.Create;
<p></FONT>
<p>
<P><FONT face="Times New Roman">  Mammal.Walk;
<p></FONT>
<p>
<P><FONT face="Times New Roman">  Mammal.Free;
<p></FONT>
<p>
<P><FONT face="Times New Roman">end;
<p></FONT>
<p>
<P>上面代码中,最后的输出结果是:(<FONT face="Times New Roman">B</FONT>)
<p>
<p>
<P><FONT face="Times New Roman">A.‘Result is Dog Walk’
<p></FONT>
<p>
<P><FONT face="Times New Roman">B.‘Result ia Mannal Walk’
<p></FONT>
<p>
<P><FONT face="Times New Roman">27.</FONT>注册一个自定义组件语句的用法是:(<FONT face="Times New Roman">C</FONT>)
<p>
<p>
<P><FONT face="Times New Roman">A.RegisterComponents(TMyComponent,[‘Standard’])
<p></FONT>
<p>
<P><FONT face="Times New Roman">B.Register(TMyComponent,[‘Standard’])<br>C.RegisterComponents(‘Standard’,)<br>D.Register(‘Standard’,TMyComponent)
<p></FONT>
<p>
<P><FONT face="Times New Roman">28.dbExpress</FONT>只提供单向游标,这意味着<FONT face="Times New Roman">dbExpress</FONT>类的数据及组建不允许做编辑、修改、删除这样的操作,是否正确?(<FONT face="Times New Roman">B</FONT>)
<p>
<p>
<P><FONT face="Times New Roman">A.</FONT>是
<p>
<p>
<P><FONT face="Times New Roman">B.</FONT>否
<p>
<p>
<P><FONT face="Times New Roman">29.</FONT>窗体上放置有一个<FONT face="Times New Roman">TEdit</FONT>类的控件<FONT face="Times New Roman">Edit1</FONT>,并定义了<FONT face="Times New Roman">Edit1</FONT>的<FONT face="Times New Roman">OnEnter</FONT>事件,下面说法正确的是:(<FONT face="Times New Roman">C</FONT>)
<p>
<p>
<P><FONT face="Times New Roman">A.</FONT>当鼠标在窗体上移动时产生<FONT face="Times New Roman">Edit1OnEnter</FONT>事件
<p>
<p>
<P><FONT face="Times New Roman">B.</FONT>其他三项都不对
<p>
<p>
<P><FONT face="Times New Roman">C.</FONT>当<FONT face="Times New Roman">Edit1</FONT>获得焦点时产生<FONT face="Times New Roman">Edit10Enter</FONT>事件
<p>
<p>
<P><FONT face="Times New Roman">D.</FONT>当鼠标移动到<FONT face="Times New Roman">Edit1</FONT>的上面时产生<FONT face="Times New Roman">Edit1OnEnter</FONT>事件
<p>
<p>
<P><FONT face="Times New Roman">30.dbExpress</FONT>是一个独立的数据库接口层,它可以工作于<FONT face="Times New Roman">Windows</FONT>和<FONT face="Times New Roman">Linux</FONT>平台下吗?(<FONT face="Times New Roman">A</FONT>)
<p>
<p>
<P><FONT face="Times New Roman">A.</FONT>是
<p>
<p>
<P><FONT face="Times New Roman">B.</FONT>否
<p>
<p>
<P><FONT face="Times New Roman">31</FONT>.所有可视化的<FONT face="Times New Roman">VCL</FONT>控件都是从哪一个基类派生而来的?(<FONT face="Times New Roman">A</FONT>)
<p>
<p>
<P><FONT face="Times New Roman">A TControl
<p></FONT>
<p>
<P><FONT face="Times New Roman">B TWidgetControl
<p></FONT>
<p>
<P><FONT face="Times New Roman">C TWinControl
<p></FONT>
<p>
<P><FONT face="Times New Roman">D TwindowControl
<p></FONT>
<p>
<P><FONT face="Times New Roman">32.dbExpress</FONT>是<FONT face="Times New Roman">Borland</FONT>多层数据库概念的延伸和发展,同<FONT face="Times New Roman">TClientDataSet</FONT>类组件一样,<FONT face="Times New Roman">TSQLDataset</FONT>同样提供了数据的本地缓冲机制,是否正确?(<FONT face="Times New Roman">B</FONT>)
<p>
<p>
<P><FONT face="Times New Roman">A.</FONT>否<FONT face="Times New Roman">      B.</FONT>是
<p>
<p>
<P><FONT face="Times New Roman">33.</FONT>表达式<FONT face="Times New Roman">Writeln(‘This is ‘#<st1:chmetcnv w:st="on" UnitName="’" SourceValue="39" HasSpace="False" Negative="False" NumberType="1" TCSC="0">39’</st1:chmetcnv>xxx#39string’)</FONT>的结果是:(<FONT face="Times New Roman">B</FONT>)。
<p>
<p>
<P><FONT face="Times New Roman">A.This is xxx sstring
<p></FONT>
<p>
<P><FONT face="Times New Roman">B.this is ‘xxx#39string
<p></FONT>
<p>
<P><FONT face="Times New Roman">C.This is ‘’’xxx’string<br>D.This is ‘xxx’string
<p></FONT>
<p>
<P><FONT face="Times New Roman">34.</FONT>集合类型的数据大小是:(<FONT face="Times New Roman">A</FONT>)
<p>
<p>
<P><FONT face="Times New Roman">A.0..255
<p></FONT>
<p>
<P><FONT face="Times New Roman">B.0..65535
<p></FONT>
<p>
<P><FONT face="Times New Roman">C.0..63
<p></FONT>
<p>
<P><FONT face="Times New Roman">D.0..31
<p></FONT>
<p>
<P><FONT face="Times New Roman">35.</FONT>关于<FONT face="Times New Roman">CLX</FONT>以下说法不正确的是:(<FONT face="Times New Roman">A</FONT>)
<p>
<p>
<P><FONT face="Times New Roman">A.CLX</FONT>是在<FONT face="Times New Roman">VCL</FONT>的基础上开发的,而非重新开发的
<p>
<p>
<P><FONT face="Times New Roman">B.CLX</FONT>是伴随着<FONT face="Times New Roman">LINUX</FONT>问世的
<p>
<p>
<P><FONT face="Times New Roman">C.CLX</FONT>的含义就是跨平台类库
<p>
<p>
<P><FONT face="Times New Roman">D.VCL</FONT>的代码不可以直接移植到<FONT face="Times New Roman">CLX
<p></FONT>
<p>
<P><FONT face="Times New Roman">36.Windows</FONT>的消息系统中的消息来源可分为:(<FONT face="Times New Roman">B</FONT>)
<p>
<p>
<P>A<FONT face="Times New Roman">.</FONT>硬件消息,应用程序消息
<p>
<p>
<P>B<FONT face="Times New Roman">.</FONT>应用程序消息,硬件消息,<FONT face="Times New Roman">Windows</FONT>系统的窗口管理消息
<p>
<p>
<P>C<FONT face="Times New Roman">.</FONT>用户自定意消息,<FONT face="Times New Roman">Windows</FONT>系统的窗口管理消息、
<p>
<p>
<P>D<FONT face="Times New Roman">.</FONT>硬件消息,<FONT face="Times New Roman">Windows</FONT>系统的窗口管理消息
<p>
<p>
<P><FONT face="Times New Roman">37.TPersistent</FONT>类的用途是什么?(<FONT face="Times New Roman">C</FONT>)
<p>
<p>
<P>A<FONT face="Times New Roman">.</FONT>作为<FONT face="Times New Roman">DLL</FONT>接口的基类,因为<FONT face="Times New Roman">DLL</FONT>不能自动被加载
<p>
<p>
<P>B<FONT face="Times New Roman">.</FONT>可以完成<FONT face="Times New Roman">Windows</FONT>控件的封装
<p>
<p>
<P>C<FONT face="Times New Roman">.</FONT>是所有用来保存和加载<FONT face="Times New Roman">Delphi</FONT>对象流的类的基类
<p>
<p>
<P>D<FONT face="Times New Roman">.</FONT>所有<FONT face="Times New Roman">Delphi</FONT>的类都从它派生而来
<p>
<p>
<P><FONT face="Times New Roman">38.</FONT>下面三个类型转换操作中,哪一句是不正确的?(<FONT face="Times New Roman">A</FONT>)
<p>
<p>
<P><FONT face="Times New Roman">Procedure Tform1.AbuttonClick(Sender:TObject);
<p></FONT>
<p>
<P><FONT face="Times New Roman">Begin
<p></FONT>
<p>
<P><FONT face="Times New Roman">………
<p></FONT>
<p>
<P><FONT face="Times New Roman">end;
<p></FONT>
<p>
<P><FONT face="Times New Roman">A.(Sender is TButton).Caption:=’Button’
<p></FONT>
<p>
<P><FONT face="Times New Roman">B.TButton(Sender).Caption:=’Button’
<p></FONT>
<p>
<P><FONT face="Times New Roman">C.(Sender As TButton).Caption:=’Button’
<p></FONT>
<p>
<P><FONT face="Times New Roman">39.</FONT>在设计一个<FONT face="Times New Roman">MDI</FONT>应用程序时,假设主窗体的<FONT face="Times New Roman">Name</FONT>是<FONT face="Times New Roman">MainForm</FONT>,而子窗体的定义是<FONT face="Times New Roman">Child:TChildForm</FONT>,那么应该采取下面哪种方法来生成子窗体?(<FONT face="Times New Roman">A</FONT>)
<p>
<p>
<P>A<FONT face="Times New Roman">.Child:=TChildForm.Create(Nil)
<p></FONT>
<p>
<P>B<FONT face="Times New Roman">.Child:=TChildForm.Create(TApplication)
<p></FONT>
<p>
<P>C<FONT face="Times New Roman">.Child:=TChildForm.Create(MainForm)
<p></FONT>
<p>
<P>D<FONT face="Times New Roman">.Child:=TChildForm.Create(TMainform)
<p></FONT>
<p>
<P><FONT face="Times New Roman">40.</FONT>有关<FONT face="Times New Roman">Assigned</FONT>的说法哪个是正确的?(<FONT face="Times New Roman">C</FONT>)
<p>
<p>
<P><FONT face="Times New Roman">A.</FONT>其他三项都不对
<p>
<p>
<P><FONT face="Times New Roman">B.Assigned</FONT>的作用是判断一个对象是否为<FONT face="Times New Roman">Nil</FONT>,如果是<FONT face="Times New Roman">Nil</FONT>,返回<FONT face="Times New Roman">True</FONT>,如果不是<FONT face="Times New Roman">Nil</FONT>,返回<FONT face="Times New Roman">False
<p></FONT>
<p>
<P><FONT face="Times New Roman">C.Assigned</FONT>的参数可以是对象或者方法,或者是一个指针
<p>
<p>
<P><FONT face="Times New Roman">D.Assigned</FONT>的作用是判断<FONT face="Times New Roman">Assign</FONT>过程是否已经完成。
<p>
<p>
<P><FONT face="Times New Roman">41</FONT>、在修改数据前检查<FONT face="Times New Roman">TQuery</FONT>组件的状态,发现处于浏览(<FONT face="Times New Roman">daBrowse</FONT>)状态,该<FONT face="Times New Roman">TQuery</FONT>组件的<U><FONT face="Times New Roman"> Active    </FONT></U>属性的值已经为真,则调用该<FONT face="Times New Roman">TQuery</FONT>组件的<FONT face="Times New Roman">Edit</FONT>方法可以将其状态该为可修改。
<p>
<p>
<P><FONT face="Times New Roman">42</FONT>、在当前<FONT face="Times New Roman">Form</FONT>上添加一个<FONT face="Times New Roman">TActionList</FONT>组件(已添加),选择一个“<FONT face="Times New Roman">TEditCopy</FONT>”标准动作添加到<FONT face="Times New Roman">TActionList</FONT>组件中。
<p>
<p>
<P><FONT face="Times New Roman">43</FONT>、将默认路径下的<FONT face="Times New Roman">BrowseFolder.pas</FONT>组件安装在<FONT face="Times New Roman">Delphi IDE</FONT>的默认的<FONT face="Times New Roman">package</FONT>中。
<p>
<p>
<P><FONT face="Times New Roman">44</FONT>、调用<FONT face="Times New Roman">TQuery</FONT>组件的<FONT face="Times New Roman">Prepare</FONT>方法让<FONT face="Times New Roman">BDE</FONT>和远程的数据库服务器为查询分配资源并执行一些优化操作,称为执行查询前的准备工作。因为执行这个查询的准备工作会消耗一定的资源,所以在完成查询以后应该调用<FONT face="Times New Roman">TQuery</FONT>组件的<U><FONT face="Times New Roman">  UnPrepare </FONT></U>方法来释放分配给查询的资源。
<p>
<p>
<P><FONT face="Times New Roman">45</FONT>、数据集<FONT face="Times New Roman">TQurey</FONT>要执行如下<FONT face="Times New Roman">SQL</FONT>语句:<FONT face="Times New Roman">select * from mytable
<p></FONT>
<p>
<P>请补充完成程序中横线所缺少的语句:
<p>
<p>
<P><FONT face="Times New Roman">var
<p></FONT>
<p>
<P><FONT face="Times New Roman">  Query1:TQuery;
<p></FONT>
<p>
<P><FONT face="Times New Roman">……
<p></FONT>
<p>
<P><FONT face="Times New Roman">begin
<p></FONT>
<p>
<P><FONT face="Times New Roman"><U>with  </U> Query1 do
<p></FONT>
<p>
<P><FONT face="Times New Roman">  begin
<p></FONT>
<p>
<P><FONT face="Times New Roman">    Close;
<p></FONT>
<p>
<P><FONT face="Times New Roman">    Clear;
<p></FONT>
<p>
<P><FONT face="Times New Roman">    SQL.Add(‘select * from mytable’);
<p></FONT>
<p>
<P><FONT face="Times New Roman">    Open;
<p></FONT>
<p>
<P><FONT face="Times New Roman">  end;
<p></FONT>
<p>
<P><FONT face="Times New Roman">end;
<p></FONT>
<p>
<P><FONT face="Times New Roman">46</FONT>、下面语句用来删除<FONT face="Times New Roman">TMemo</FONT>组件的第<FONT face="Times New Roman">2</FONT>行,请补充完整:
<p>
<p>
<P><FONT face="Times New Roman">Memo1.Lines.delete(<U> 1 </U>);
<p></FONT>
<p>
<P><FONT face="Times New Roman">47</FONT>、调用函数<U><FONT face="Times New Roman">  IntToStr  </FONT></U>实现整型数字到文本字符串的转换。(只写出括号前的函数名称)
<p>
<p>
<P><FONT face="Times New Roman">48</FONT>、完成下列要求:
<p>
<p>
<P>(<FONT face="Times New Roman">1</FONT>)自定义一个过程类型<FONT face="Times New Roman">TGetPropProc</FONT>,该类型有一个参数<FONT face="Times New Roman">Prop</FONT>,类型为<FONT face="Times New Roman">IProperty
<p></FONT>
<p>
<P>(<FONT face="Times New Roman">2</FONT>)定义一个类<FONT face="Times New Roman">TPropertyEditor</FONT>,该类有一个过程<FONT face="Times New Roman">GetProperties</FONT>,该过程有一个参数,参数类型为<FONT face="Times New Roman">TgetPropProc</FONT>,请写出有关代码。
<p>
<p>
<P>(<FONT face="Times New Roman">3</FONT>)在<FONT face="Times New Roman">Uses</FONT>中写出所使用的单元。
<p>
<p>
<P>备注:请从下面两种结构中选择一种,并添加具体的代码。
<p>
<p>
<P>(<FONT face="Times New Roman">1</FONT>)控制台结构
<p>
<p>
<P><FONT face="Times New Roman">program Project1;
<p></FONT>
<p>
<P><FONT face="Times New Roman">{$APPTYPE CONSOLE}
<p></FONT>
<p>
<P><FONT face="Times New Roman">uses
<p></FONT>
<p>
<P><FONT face="Times New Roman">  SysUtils;
<p></FONT>
<p>
<P>
<P><FONT face="Times New Roman"></FONT></P>
<p>
<P><FONT face="Times New Roman">begin
<p></FONT>
<p>
<P><FONT face="Times New Roman">  
<p></FONT>
<p>
<P><FONT face="Times New Roman">end.
<p></FONT>
<p>
<P>(<FONT face="Times New Roman">2</FONT>)单元结构
<p>
<p>
<P><FONT face="Times New Roman">unit Unit1;
<p></FONT>
<p>
<P><FONT face="Times New Roman">interface
<p></FONT>
<p>
<P><FONT face="Times New Roman">uses
<p></FONT>
<p>
<P><FONT face="Times New Roman">  DesignEditors,DesignIntf;
<p></FONT>
<p>
<P><FONT face="Times New Roman">type
<p></FONT>
<p>
<P><FONT face="Times New Roman">  TGetPropProc=procedure(const Prop:Iproperty)of Object;
<p></FONT>
<p>
<P><FONT face="Times New Roman">  TPropertyEditor=class(TBasePropertyEditor,Iproperty)
<p></FONT>
<p>
<P><FONT face="Times New Roman">  Public
<p></FONT>
<p>
<P><FONT face="Times New Roman">   Procedure GetProperties(Proc:TGetPropProc);
<p></FONT>
<p>
<P><FONT face="Times New Roman">  end;
<p></FONT>
<p>
<P><FONT face="Times New Roman">implementation
<p></FONT>
<p>
<P><FONT face="Times New Roman">procedure TPropertyEditor.GetProperties(Proc:TGetPropProc);
<p></FONT>
<p>
<P><FONT face="Times New Roman">begin
<p></FONT>
<p>
<P><FONT face="Times New Roman">end;
<p></FONT>
<p>
<P><FONT face="Times New Roman">end.
<p></FONT>
<p>
<P><FONT face="Times New Roman">49</FONT>、在下面代码的基础上,声明一个函数常量,并将函数常量的指针指向函数<FONT face="Times New Roman">Calc</FONT>。
<p>
<p>
<P>备注:请在下面结构中添加具体的代码。
<p>
<p>
<P><FONT face="Times New Roman">Program project1;
<p></FONT>
<p>
<P><FONT face="Times New Roman">{$APFTYPE CONSOLE}
<p></FONT>
<p>
<P><FONT face="Times New Roman">uses
<p></FONT>
<p>
<P><FONT face="Times New Roman">  SysUtils;
<p></FONT>
<p>
<P><FONT face="Times New Roman">function Calc(x,y:integer):integer;
<p></FONT>
<p>
<P><FONT face="Times New Roman">begin
<p></FONT>
<p>
<P><FONT face="Times New Roman">  Calc:=x+y;
<p></FONT>
<p>
<P><FONT face="Times New Roman">end;
<p></FONT>
<p>
<P><FONT face="Times New Roman">type
<p></FONT>
<p>
<P><FONT face="Times New Roman">  Tfunction=function(x,y:integer):integer;
<p></FONT>
<p>
<P><FONT face="Times New Roman">const
<p></FONT>
<p>
<P><FONT face="Times New Roman">  MyFunction:Tfunction=Calc;
<p></FONT>
<p>
<P><FONT face="Times New Roman">begin
<p></FONT>
<p>
<P><FONT face="Times New Roman">  write(MyFunction(2,3));
<p></FONT>
<p>
<P><FONT face="Times New Roman">  readln;
<p></FONT>
<p>
<P><FONT face="Times New Roman">end.
<p></FONT>
<p>
<P><FONT face="Times New Roman">50</FONT>、编写实现一个<FONT face="Times New Roman">DLL</FONT>。该DLL中有一个输出函数function ChangeColorWordToInt(ColorName : PChar):TColor;stdcall;可以将字符串按下表转换为对应的颜色,并返回该颜色值:Red-&gt;CLRed;Blue-&gt;CLBlue;Lime-&gt;CLLime;Other-&gt;CLBlack。
<p>
<p>
<P>一点提示:用StringToColor 和 ColorToString
<p>
<p>
<P>51、编一个显示和隐藏任务栏的应用程序,它有两个按钮分别用来显示和隐藏任务栏。
<p>
<p>
<P>
<P><FONT face="Times New Roman"></FONT></P>
<p>
<P>
<P><FONT face="Times New Roman"></FONT></P>
<p>
<P>
<P><FONT face="Times New Roman"></FONT></P>
<p>
<P>
<P><FONT face="Times New Roman"></FONT></P>
<p>
<P><FONT face="Times New Roman">var
<p></FONT>
<p>
<P><FONT face="Times New Roman">  taskbarWnd:THandle;
<p></FONT>
<p>
<P><FONT face="Times New Roman">….
<p></FONT>
<p>
<P><FONT face="Times New Roman">begin
<p></FONT>
<p>
<P><FONT face="Times New Roman">taskbarWnd := FindWindow('shell_traywnd',nil);
<p></FONT>
<p>
<P><FONT face="Times New Roman">ShowWindow(taskbarWnd,sw_Hide);  //</FONT>隐藏
<p>
<p>
<P><FONT face="Times New Roman">ShowWindow(taskbarWnd,sw_Restore);  //</FONT>显示
<p>
<p>
<P><FONT face="Times New Roman">end;
<p></FONT>
<p>
[此贴子已经被作者于2005-6-7 17:41:29编辑过]

nightgril 发表于 2005-6-9 22:23

<P>真是不错!</P>

nightgril 发表于 2005-6-9 22:24

新手请多指教!

qrxjrsto 发表于 2012-1-11 03:54

这个贴子要顶~~~~~~~~~~~~~~
页: [1]
查看完整版本: [分享]Delphi试题51道