一、选择题(每题2分,共20分)1、在运行状态下,下面哪一种类型的窗口不具备最大化和最小化功能()A.主窗口B.弹出式窗口C.多文档窗口D.响应式窗口2、下面哪一种类型的窗口不可以有菜单栏()A.子窗口B.弹出式窗口C.多文档窗口D.主窗口3、PB是()公司推出的一种软件产品。A.BorlandB.SybaseC.oracleD.Microsoft4、在Powerbuilder中,有4种不同范围的变量,作用范围仅在所在的事件和函数内部起作用,在别的事件和函数中不起作用的是下列哪一类变量。()A.sharedB.instanceC.globalD.local5、如果希望在窗口中,对鼠标的单击右键事件进行处理,应当在窗口的哪一个事件中编写程序?()A.key()B.rightclicked()C.clicked()D.leftclicked()1、Powerbuilder中在设计数据窗口对象时,有11种显示风格可选,下面哪一种显示风格适合设计单条数据的录入?()A.tabularB.gridC.labelD.freeform2、使用分组框不仅对其有装饰作用,还可以起到分组效果的控件是()A.单选钮B.复选框C.命令按钮D.图片超链接3、用messagebox函数显示提示框,如下图所示:该函数的参数至少有几个?()A.2B.3C.4D.54、执行下列语句:anyaa=“aa”intkk=5aa=kk变量aa的类型为()A.stringB.intC.anyD.类型不确定5、执行语句net=MessageBox(提示,您是否真的要退出本系统?,Information!,YesNoCancel!,2)将显示一个提示框,如果在该提示框上,单击了“取消”按钮,则1变量net的值为:()A.1B.2C.3D.41、下列选项哪一个不是合法的PowerScript语言的标识符()A.abcB.windowC.parentwinD.china#12、下面哪个是PowerBuilder开发工具中无效的注释表达方式()A.//这是一个注释B.REM这是一个注释C./***********这是一个注释***********/D.//*这是一个注释*//3、()类型的窗口不可以最大化和最小化。A.response!B.popup!C.mdi!D.mdihelp!4、下面哪一种类型的窗口必须有菜单栏()A.主窗口B.弹出式窗口C.多文档窗口D.子窗口5、在PB9.0集成环境中,新创建一个PowerBuilder应用程序时,应当首先创建()A.应用ApplicationB.工作空间WorkSpaceC.窗口对象WindowD.数据窗口对象DataWindow1、编辑风格影响用户输入和修改数据的方法。当在数据窗口中输入人员的性别时,宜选用()编辑风格。A.EditB.EditMaskC.RadioButtonD.CheckBox2、如果希望在窗口中,对鼠标的单击右键事件进行处理,应当在窗口的哪一个事件中编写程序?()A.key()B.rightclicked()C.clicked()D.leftclicked()3、如果想用PowerBuilder9打开PowerBuilder8版本开发的程序,需要将该应用程序移植到当前版本,移植的菜单命令为:()A.incrementalbuildB.migrateC.deployD.debug4、Powerbuilder中在设计一数据窗口对象时,有11种显示风格可选,下面哪一种显示风格适合设计综合报表?()A.freeformB.gridC.labelD.tabular5、在设计数据窗口时,如果要在检索出的数据的最后显示统计结果,应把统计公式放置在数据窗口的()。A.detail区域B.footer区域C.grouptrailer区域D.summary区域二、填空题(每空1分,共13分)1、默认的用来连接数据库的全局变量名称是___sqlca__。2、用openwithparm(w_main,32)函数打开窗口w_main时,会传递给该窗口一个参数,在该窗口的open事件中,我们想把32取出赋给变量myarg,请写出实现该功能的语句:__myarg=2message.doubleparm______。3、Right(Left(trim(”河科大管理学院”),8),4)_____大管________。4、PowerBuilder中函数____isnull___________用于判断变量是否为空。5、Dec{2}类型变量a、b、c的值分别为:25、7、8,执行a/=b*2-c语句后,变量a的值为:。6、按照参数传递的不同方式,函数参数有三种类型,分别是-传值、传地址(传引用)和_只读_。7、在设计字段数据的显示风格时,用掩码设计可以达到很好的效果,例如:要把“固定电话”字段列(vachar类型)数据037964288866显示为“(0379)64288866”,设计的掩码为:(####)########。8、工作区文件的后缀名为:pbw,目标文件的后缀名为:pbt,库文件的后缀名为:pbl。9、命令按钮默认的前缀为_____cb_。10、整型变量a、b、c的值分别为:50、12、2,执行a/=b-c*2语句后,变量a的值为:。11、执行p=pos(hnkjdxjgxyxinguandianshang,a,pos(sadabbffbcbcabbabbc,cbc,5))语句后,p的值为:。12、必须为应用对象的____open_______事件编写事件处理程序。13、用户一次可以打开_____1______个工作区,每个工作区中可以包含_______N___个目标。14、在设计字段数据的显示风格时,用掩码设计可以达到很好的效果,例如:要把“固定电话”字段列(vachar类型)数据037964288866显示为“0379-64288866”,设计的掩码为:。15、PB将几乎所有用来创建应用程序的组件都作为对象来管理,对象都含有属性,函数,事件。16、将窗口w_welcome标题设置为“欢迎窗口”的程序语句是___w_welcome.title=“欢迎窗口”_________________。17、用语句openwithparm(w_test,”98”)打开窗口w_test时,会传递给该窗口一个参数,在该窗口的open事件中,我们想把”98”取出赋给变量myarg,请写出实现该功能的语句:______myarg=message.stringparm______________。18、列举四种常用的数据窗口对象的显示风格______________、_______________、________________、_______________。三、判断题(每题1分,共10分)a)在PowerBuilder环境中,删除DB_profile,相应的ODBC数据源也被删除了,但相应的数据库文件没有被删除。()b)应用对象是一个可视对象。()c)PowerBuilder环境中可以同时打开多个工作区,一个工作区内可以同时打开多个应用程序,一个应用程序所创建的对象又可以存放到多个库文件中。()1、在PowerBuilder中,枚举类型的数据是以“!”结束的一组常量,开发人员可以定义自己的枚举类型。()2、只有mdi或main类型的窗口才能挂接菜单。()3、PowerBuilder具备面向对象编程的特征。()4、用PowerBuilder开发工具开发的应用程序,生成的可执行文件(后缀名为:exe),除数据库文件外,无须其它任何文件的支持,即可在另一台机器上运行。()5、一般,数据窗口对象命名以d_作为前缀,数据窗口控件以dw_作为前缀。()6、Powerscript语言中的函数,如果没有参数,可以不以括号结束。()7、Powerscript语言中,在进行逻辑判断时,把0处理为“假”。()1、Powerscript语言中,在进行逻辑判断时,把非零的表达式都处理为“真”()2、当数据窗口的数据源是从多个表中选择列时,那么缺省情况下所有列的跳转次序均为0。()33、用PowerBuilder9.0开发的应用程序可以同时访问多个数据库系统。()4、在PowerBuilder开发环境中,不能实现对所连接数据库的建表、删除表、对表建立索引、主键等基本操作。()5、一个表中可以设置多个索引,但只能设置一个主键和一个外键。()6、语句dw_1.insertrow(0)是在数据窗口dw_1的主缓冲区中,当前行前面插入一条新的空白数据行。()7、删除dbprofile的同时,会删除ODBC数据源,但不会影响物理数据库。()8、窗口的closequery事件和close事件执行的先后顺序是closequery事件先执行,close事件后执行。如果在closequery事件中执行了语句return1,close事件的代码得不到执行,但可以当前关闭窗口。()9、在PB开发环境下,建立与数据库的连接时,物理数据库、ODBC配置及dbprofile配置必须用相同的名字。()10、一个pbl文件中可以不包含应用对象,也可以包含多个应用对象。()四、嵌入式SQL语句(每题2分,共10分)现有职工表,表结构(表名:work)及数据如下:work_idwork_namesexsalary200601魏建国男2000200606李雯女2500200602黄佳超女2600200603王军男1600用嵌入式SQL语句完成下列功能:1、检索出work_id为200602的职工的work_name和salary,存入string类型变量workid和整型变量age中。2、Selectwork_name,salary3、Into:workid,:age4、Fromwork5、Wherework_id='200602'6、Usingsqlca;7、检索出工资(salary)大于等于2000的职工人数,存入整型变量kk中。8、把所有性别(sex)为“女”的职工的工资(salary)上涨100元钱。9、插入一条新记录:200604,李明,男,2300。10、把work_id为200606的学生的记录删除。五、语法题(共5分)1、求出所有的“水仙花数”,所谓“水仙花数”是指一个3位数,其各位数字立方和等于该数本身。例如:153就是一个“水仙花数”,因为153=1*1*1+5*5*5+3*3*3。2、求Fibonacci数列的前20项之和,Fibonacci数列是指前两项分别为0和1,从第三项起,每一项都是前两项之和。例如:0、1、1、2、3、5、8、13、21……条件及要求:算法描述符合powerscript语法;输出用messagebox对话框函数。六、编程题(共20分)用PowerBuilder9.0实现一个人员维护应用程序workerapp。运行workerapp时弹出窗口w_student,完成检索、修改职工库中人员信息的功能,如图所示,其中数据窗口控件名为dw_stu。4请完成下列事件的脚本:1、下面是应用程序对象workerapp的open事件脚本,请补充完整。(每空1分,共4分)SQLCA.DBMS=‘ODBC’SQLCA.AutoCommit=FalseSQLCA.DBParm=ConnectString=‘DSN=stu;UID=dba;PWD=sql’Connectusingsqlca;IF_____sqlca.sqlcode0_____________________THENMessageBox(错误,不能连接到数据库上!)__________return________________ENDIF________open(w_student)__________________2、请写出w_student的open事件脚本,要求打开窗口后,数据窗口控件中显示全部的人员记录。(2分)Dw_stu.settransobject(sqlca)Dw_stu.retriev