1、二级 VISUAL+BASIC 笔试-426 及答案解析(总分:104.00,做题时间:90 分钟)一、选择题(总题数:35,分数:70.00)1.算法的时间复杂度是指( )。A) 执行算法程序所需要的时间B) 算法程序的长度C) 算法执行过程中所需要的基本运算次数D) 算法程序中的指令条数(分数:2.00)A.B.C.D.2.下面描述中,不属于软件危机表现的是A) 软件过程不规范B) 软件开发生产率低C) 软件质量难以控制D) 软件成本不断提高(分数:2.00)A.B.C.D.3.对于长度为 n 的线性表,在最坏情况下,下列各排序法所对应的比较次数中正确的是_。(A) 冒泡排序为 n/2(B
2、) 冒泡排序为 n(C) 快速排序为 n(D) 快速排序为 n(n-1)/2(分数:2.00)A.B.C.D.4.下列叙述中正确的是( )。A在模块化程序设计中,一个模块应该尽量多的包括与其他模块联系的信息B在自顶向下、逐步细化的设计过程中,首先应设计解决问题的第一个细节C在模块化程序设计中,一个模块内部的控制结构也要符合结构化原则D在程序设计过程中,不能同时采用结构化程序设计方法与模块化程序设计方法(分数:2.00)A.B.C.D.5.下列叙述中正确的是( )。A) 在面向对象的程序设计中,各个对象之间具有密切的关系B) 在面向对象的程序设计中,各个对象都是公用的C) 在面向对象的程序设计中
3、,各个对象之间相对独立,相互依赖性小D) 上述 3 种说法都不对(分数:2.00)A.B.C.D.6.以下能从字符串“VisualBasic“中直接取出子字符串“Basic“的函数是( )。ALeft BMidCString DInstr(分数:2.00)A.B.C.D.7.设有如下关系表,由关系 R 和 S 通过运算得到关系 T,则所使用的运算为( )。(分数:2.00)A.B.C.D.8.设 x 是整型变量,与函数 IIf(x0,-x,x)有相同结果的代数式是A)|x| B)-|x| C)x D)-x(分数:2.00)A.B.C.D.9.在运行程序时,在文本框中输入新的内容,或在程序代码中
4、改变 Text 的属性值,相应会触发到A) GotFocus 事件 B) Click 事件 C) Change 事件 D) DblClick 事件(分数:2.00)A.B.C.D.10.语句 Y=Y+1 的正确含义是( )。A)变量 Y 的值与 Y+1 的值相等 B)将变量 Y 的值存到 Y+1 中去C)将变量 Y 的值加 1 后赋值给变量 Y D)变量 Y 的值为 1(分数:2.00)A.B.C.D.11.假定窗体的名称(Name 属性)为 Form1,则把窗体的标题设置为“等级考试”的语句为_。A) Form1=“等级考试“B) Caption=“等级考试“C) Form1.Text=“等
5、级考试“D) Form1.Name=“等级考试/(分数:2.00)A.B.C.D.12.设 a=5,b=6,c=7,d=8,执行下列语句后,x 的值为( )。x=IIf(ab)And(cd),10,20)A10 B20CTrue DFalse(分数:2.00)A.B.C.D.13.下列可作为 Visual Basic 变量名的是_。A) A#A B) 4A C) ? xy D) constA(分数:2.00)A.B.C.D.14.在窗体上画一个命令按钮,然后编写如下事件过程;Private Sub Command1_Click()MsgBox Str(123+321)End Sub程序运行后,
6、单击命令按钮,则在信息框中显示的提示信息为( )。A) 字符串“123+321” B) 字符串“444” C) 数值“444” D) 空白(分数:2.00)A.B.C.D.15.在运行程序时,在程序代码中改变文本框的 Text 属性值,或在文本框中输入新的内容,相应会触发( )事件。A)GotFocus B)Click C)Change D)DblClick(分数:2.00)A.B.C.D.16.下列程序段的执行结果为_。I=0For G=10 To 19 Step 3I=I+1Next GPrint IA) 4 B) 5 C) 3 D) 6(分数:2.00)A.B.C.D.17.在窗体上画一
7、个名称为 TxtA 的文本框,然后编写如下的事件过程:(分数:2.00)A.B.C.D.18.窗体上添加一个文本框 Text1,编写下列代码:Private Sub Text1_KeyDown(KeyCode As Integer, Shift As Integer)Print Chr(KeyCode+51 KeyCode)End Sub程序运行时,在文本框中输入“ab”,则在窗体上输出为( )。AF65G66BF65F66CG66F65DG65G66(分数:2.00)A.B.C.D.19.在调用含有对象的过程时,对象只能通过_传送。(A) 传地址方式(B) 传值方式(C) 数组方式(D) 变
8、量方式(分数:2.00)A.B.C.D.20.没有如下变量声明:Dim TestDate As Date为变量 TestDate 正确赋值的表达方式是_。A) TestDate=#1/1/2002#B) TestDate=#“1/1/2002“#C) TestDate=Date(“1/1/2002“)D) TestDate=Format(m/d/yy,“i/i/2002“)(分数:2.00)A.B.C.D.21.默认情况下,下面声明的数组的元素个数是( )。Dim a(5,-2 To 2)A) 20 B) 24 C) 25 D) 30(分数:2.00)A.B.C.D.22.若要建立一个学生管理
9、系统的输入界面,其中要求选择学生的性别、政治面貌(党/团/群众)及选课情况(共有 5 门课,可任选),下列设置方法正确的是( )。A)将 5 门课程用一组 5 个选择框来表示,将性别和政治面貌用 5 个单选按钮来表示B)在一个框架上绘制有 5 个复选框的控件数组表示 5 门课程,在一个框架上绘制两个单选按钮表示性别,在一个框架上绘制 3 个单选按钮表示政治面貌的 3 种情况C)将 5 门课程用一组 5 个单选按钮来表示,将性别和政治面貌用 5 个选择框来表示D)用一组 10 个选择框来表示课程、性别和政治面貌(分数:2.00)A.B.C.D.23.在窗体上画一个名称为 List1 的列表框,一
10、个名称为 Label1 的标签。列表框中显示若干国家的名称,当单击列表中的某个国家名时,在标签中显示选中国家的名称。下列正确实现上述功能的程序是( )。A) Private Sub List1_Click()Labe11. Camion=List1. ListIndexEnd SubB) Private Sub List1_Click()Labe11. Name=List1. ListIndexEnd SubC) Private Sub List1_Click()Labe11.Name=List1. TextEnd SubD) Private Sub List1_Click()Labe11.
11、Caption=List1. TextEnd Sub(分数:2.00)A.B.C.D.24.下列程序段的执行结果为( )。a=95if a60ThenI=1if a70Thenl=2if a80Thenl=3if a90ThenI=4Print“I=“;IAI=1 BI=2 CI=3 DI=4(分数:2.00)A.B.C.D.25.要求当鼠标在图片框 P1 中移动时,立即在图片框中显示鼠标的位置坐标。下面能正确实现上述功能的事件过程是A)Private Sub P1_MouseMove(Button As Integer,Shift As Integer,X As Single,Y As Si
12、ngle) Print X,YEnd SubB)Private Sub P1_MouseDown(Button As Integer,Shift As Integer,X As Single,Y As Single)Picture.Print X,YEnd SubC)Private Sub P1_MouseMove(Button As Integer,Shift As Integer,X As Single,Y As Single)P1.Print X,YEnd SubD)Private Sub Form_MouseMove(Button As Integer,Shift As Integer
13、,x As Single,Y As Single) P1.Print X,YEnd Sub(分数:2.00)A.B.C.D.26.以下语句用于打开一个顺序文件 Open “C:/MyFile.txt“ For OutPut,但是该语句的一个重要错误是没有A) 指定打开方式 B) 指定文件号C) 指定打开文件名 D) 指定文件类型(分数:2.00)A.B.C.D.27.下列成员中不属于主窗口的是( )。A最大化按钮 B状态栏C系统菜单 D工具栏(分数:2.00)A.B.C.D.28.设有以下循环结构:Do循环体Loop While条件则以下叙述中错误的是_。A) 若“条件”是一个为 0 的常数,
14、则一次也不执行循环体B) “条件”可以是关系表达式、逻辑表达式或常数C) 循环体中可以使用 Exit Do 语句D) 如果“条件”总是为 True,则不停地执行循环体(分数:2.00)A.B.C.D.29.窗体上有 Text1、Text2 两个文本框及一个命令按钮 Command1,编写下列程序:Dim y As IntegerPrivate Sub Command1_Click()Dim x As Integerx=2Text1.Text=p2(pl(x),y):Text2.Text=pl(x)End SubPrivate Function pl(x As Integer)As Intege
15、rx=x+y:y=x+ypl=x+yEnd FunctionPrivate Function p2(x As Integer,y As Integer)As Integerp2=2*x+yEnd Function程序运行后,第一次单击和第二次单击命令按钮后,文本框 Text1 和 Text2 内的值分别是( )。A) 2 42 4B) 2 44 8C) 10 1058 58D) 4 48 8(分数:2.00)A.B.C.D.30.如果准备读文件,打开顺序文件“text.dat“的正确语句是A) Open “text.dat“ For Write As#1B) Open “text.dar“ F
16、or Binary As#1C) Open “text.dat“ For Input As#1D) Open “text.dat“ For Random As#1(分数:2.00)A.B.C.D.31.下面的程序运行结果是( )。Private Sub Form_Click()i=0Doi=i+1if i10 then Exit DoLoop Until i10Print iEnd SubA0 B1 C10 D11(分数:2.00)A.B.C.D.32.下列程序段的执行结果为_。X=2Y=1If X*Y1 Then Y=Y-1 Else Y=-1Print Y-X0A) True B) Fal
17、se C) -1 D) 1(分数:2.00)A.B.C.D.33.要使某菜单能够通过按住键盘上的 Alt 键及 K 键打开,应( )。A在“名称”栏中“K”字符前加上“bEnd SubSub p1(x As Integeh By Val y As Integer)x=x+10y=y+20End SubSub p2(ByVal x As Integer,y As Integer)x=x+10y=y+20End SubSub p3 (ByVal x As Integer,ByVal y As Integer)x=x+10y=y+20End Sub该程序运行后,单击窗体,则在窗体上显示的内容是:a=
18、U /U和 b=U /U。(分数:4.00)填空项 1:_填空项 1:_46.设窗体上有一个名称为 CD1 的通用对话框、一个名称为 Text1 的文本框和一个名称为 Command1 的命令按钮。程序执行时,单击 Command1 按钮,则显示打开文件对话框,操作者从中选择一个文本文件,并单击对话框上的“打开”按钮后,则可打开该文本文件,并读入一行文本,显示在 Text1 中。下面是实现此功能的事件过程,请填空。Private Sub Command1_Click()CD1.Filter=“文本文件|*.txt|Word 文档|*.doc“CD1.FilterIndex=1CD1.ShowO
19、penIf CD1.FileName“ ThenOpenU /UFor Input As #1Line Input #1, Ch$Close #1Text1.Text=U /UEnd IfEnd Sub(分数:4.00)填空项 1:_二级 VISUAL+BASIC 笔试-426 答案解析(总分:104.00,做题时间:90 分钟)一、选择题(总题数:35,分数:70.00)1.算法的时间复杂度是指( )。A) 执行算法程序所需要的时间B) 算法程序的长度C) 算法执行过程中所需要的基本运算次数D) 算法程序中的指令条数(分数:2.00)A.B.C. D.解析:解析 所谓的算法的时间复杂度,是指
20、执行算法所需要的工作量,可用算法在执行过程中所需摹本运算的执行次数来度量算法的工作量。2.下面描述中,不属于软件危机表现的是A) 软件过程不规范B) 软件开发生产率低C) 软件质量难以控制D) 软件成本不断提高(分数:2.00)A. B.C.D.解析:3.对于长度为 n 的线性表,在最坏情况下,下列各排序法所对应的比较次数中正确的是_。(A) 冒泡排序为 n/2(B) 冒泡排序为 n(C) 快速排序为 n(D) 快速排序为 n(n-1)/2(分数:2.00)A.B.C.D. 解析:4.下列叙述中正确的是( )。A在模块化程序设计中,一个模块应该尽量多的包括与其他模块联系的信息B在自顶向下、逐步
21、细化的设计过程中,首先应设计解决问题的第一个细节C在模块化程序设计中,一个模块内部的控制结构也要符合结构化原则D在程序设计过程中,不能同时采用结构化程序设计方法与模块化程序设计方法(分数:2.00)A.B.C. D.解析:解析 在模块化程序设计中,模块之间的联系可以通过程序的控制结构来实现,在自顶向下、逐步细化的设计过程中,首先要考虑全局目标,而不是细节。在程序设计中,模块化和结构化可以同时使用,一个模块的内部结构也要符合结构化设计原则。5.下列叙述中正确的是( )。A) 在面向对象的程序设计中,各个对象之间具有密切的关系B) 在面向对象的程序设计中,各个对象都是公用的C) 在面向对象的程序设
22、计中,各个对象之间相对独立,相互依赖性小D) 上述 3 种说法都不对(分数:2.00)A.B.C. D.解析:解析 面向对象的程序设计是用对象模拟问题领域中的实体,各对象之间相对独立,相互依赖性小,通过消息来实现对象之间的相互联系。6.以下能从字符串“VisualBasic“中直接取出子字符串“Basic“的函数是( )。ALeft BMidCString DInstr(分数:2.00)A.B. C.D.解析:7.设有如下关系表,由关系 R 和 S 通过运算得到关系 T,则所使用的运算为( )。(分数:2.00)A.B. C.D.解析:解析 T 就是关系 R 中插入关系 S,合并为 T,即并运
23、算()。8.设 x 是整型变量,与函数 IIf(x0,-x,x)有相同结果的代数式是A)|x| B)-|x| C)x D)-x(分数:2.00)A.B. C.D.解析:解析 IIF 的语法格式为:II(expr,Truepart,Falsepart)。其中 expr 为表达式,如果 expr 为True,则返回 Truepart 的值或表达式;如果 expr 为 False,则返回 Falsepart 的值或表达式。所以,题干中语句意思是:如果一个数大于零,则取其相反值;如果小于零则取本身,所以 B)答案正确。9.在运行程序时,在文本框中输入新的内容,或在程序代码中改变 Text 的属性值,相
24、应会触发到A) GotFocus 事件 B) Click 事件 C) Change 事件 D) DblClick 事件(分数:2.00)A.B.C. D.解析:解析 文本框 Change 事件在用户改变正文或通过代码改变 Text 属性的设置时发生。10.语句 Y=Y+1 的正确含义是( )。A)变量 Y 的值与 Y+1 的值相等 B)将变量 Y 的值存到 Y+1 中去C)将变量 Y 的值加 1 后赋值给变量 Y D)变量 Y 的值为 1(分数:2.00)A.B.C. D.解析:解析 这是考查通过赋值运算符给变量赋值,赋值运算符“二”的含义是将等号右边的表达式的值赋给等号左边的变量或属性,其优
25、先级低于算术运算符,所以应该是 Y+1 先运算,然后赋值给等号左侧的 Y。11.假定窗体的名称(Name 属性)为 Form1,则把窗体的标题设置为“等级考试”的语句为_。A) Form1=“等级考试“B) Caption=“等级考试“C) Form1.Text=“等级考试“D) Form1.Name=“等级考试/(分数:2.00)A.B. C.D.解析:解析 Caption 属性用来定义窗体标题。启动 Visual Basic 或者执行“工程”菜单中的“添加窗体”命令后,窗体使用的是默认标题(如 Form1、Form2)。用 Caption 属性可以把窗体标题改为所需要的名字。该属性既可通过
26、属性窗口设置,也可以在事件过程中通过程序代码设置。12.设 a=5,b=6,c=7,d=8,执行下列语句后,x 的值为( )。x=IIf(ab)And(cd),10,20)A10 B20CTrue DFalse(分数:2.00)A.B. C.D.解析:13.下列可作为 Visual Basic 变量名的是_。A) A#A B) 4A C) ? xy D) constA(分数:2.00)A.B.C.D. 解析:评析 变量名的命名必须遵守几个规定:变量名必须以字母开头,而不能以数字或其他字符开头。变量名的其余部分可以包含字母、数字和/或下划线字符,而不允许有空格、句号或其他停顿符号。变量名不能超过
27、 255 个字符。变量名不能是 Visual Basic 的保留字。14.在窗体上画一个命令按钮,然后编写如下事件过程;Private Sub Command1_Click()MsgBox Str(123+321)End Sub程序运行后,单击命令按钮,则在信息框中显示的提示信息为( )。A) 字符串“123+321” B) 字符串“444” C) 数值“444” D) 空白(分数:2.00)A.B. C.D.解析:解析 str 函数将数值转换为对应的字符串,如 345 转换为字符串“345”,在本题中 str 函数的参数是一个数值表达式,需要先计算表达式的值之后再将计算结果转换为字符串。15
28、.在运行程序时,在程序代码中改变文本框的 Text 属性值,或在文本框中输入新的内容,相应会触发( )事件。A)GotFocus B)Click C)Change D)DblClick(分数:2.00)A.B.C. D.解析:解析 当用户向文本框输入新信息,或当程序把 Text 属性设置为新值时,将触发 Change 事件;Click 事件是在一个对象上按下然后释放一个鼠标按钮时发生;当在一个对象上按下和释放鼠标按钮并再次按下和释放鼠标按钮时,DblClick 事件发生;当对象得到焦点时,会产生 GotFocus 事件。16.下列程序段的执行结果为_。I=0For G=10 To 19 Ste
29、p 3I=I+1Next GPrint IA) 4 B) 5 C) 3 D) 6(分数:2.00)A. B.C.D.解析:评析 ForNext 循环该程序段的功能相当于根据循环变量的初始值,求循环体执行的次数。For 循环的循环次数=Int(终值-初值)/步长+1。故循环体(I=I+1)一共被执行 4 次,而每次执行 I 的值增加 1。因此循环结束后 I 的值增加 4,即 I=0+4。17.在窗体上画一个名称为 TxtA 的文本框,然后编写如下的事件过程:(分数:2.00)A.B.C.D. 解析:解析 在 Visual Basic 中,当按下与 ASCII 字符对应的键时将触发 KeyPres
30、s 事件,所以本题的答案为 D。18.窗体上添加一个文本框 Text1,编写下列代码:Private Sub Text1_KeyDown(KeyCode As Integer, Shift As Integer)Print Chr(KeyCode+51 KeyCode)End Sub程序运行时,在文本框中输入“ab”,则在窗体上输出为( )。AF65G66BF65F66CG66F65DG65G66(分数:2.00)A. B.C.D.解析:解析 KeyDown 事件返回键盘上的键,如按下字母“A”或者字母键“a”,KeyCode 码都为 65,所以按下小写字母 a 和 b 后,KeyCode 的
31、值分别为 65 和 66,KeyCode+5 的值分别为 70 和 71,对应的字母分别为 F 和 G,所以打印输出 F65 和 G66。19.在调用含有对象的过程时,对象只能通过_传送。(A) 传地址方式(B) 传值方式(C) 数组方式(D) 变量方式(分数:2.00)A. B.C.D.解析:20.没有如下变量声明:Dim TestDate As Date为变量 TestDate 正确赋值的表达方式是_。A) TestDate=#1/1/2002#B) TestDate=#“1/1/2002“#C) TestDate=Date(“1/1/2002“)D) TestDate=Format(m/
32、d/yy,“i/i/2002“)(分数:2.00)A. B.C.D.解析:解析 日期型常量的一般表示形式是:mm/dd/yyyy,如 2002 年 1 月 20 日可表示为:#1/20/2002#为避免与字符串型常量相混淆,日期常量要用“#”括起来。21.默认情况下,下面声明的数组的元素个数是( )。Dim a(5,-2 To 2)A) 20 B) 24 C) 25 D) 30(分数:2.00)A.B.C.D. 解析:解析 数组中所含有的元素个数为:上界-下界+1,对于二维数组来讲,元素个数为每一维长度的乘积,共含有 6 行、5 列共 30 个元素。22.若要建立一个学生管理系统的输入界面,其
33、中要求选择学生的性别、政治面貌(党/团/群众)及选课情况(共有 5 门课,可任选),下列设置方法正确的是( )。A)将 5 门课程用一组 5 个选择框来表示,将性别和政治面貌用 5 个单选按钮来表示B)在一个框架上绘制有 5 个复选框的控件数组表示 5 门课程,在一个框架上绘制两个单选按钮表示性别,在一个框架上绘制 3 个单选按钮表示政治面貌的 3 种情况C)将 5 门课程用一组 5 个单选按钮来表示,将性别和政治面貌用 5 个选择框来表示D)用一组 10 个选择框来表示课程、性别和政治面貌(分数:2.00)A.B. C.D.解析:解析 单选框具有多选一功能,把它们放到一个框架中,即可实现多个
34、单选框的捧他性。所以性别和政治面貌不能使用组单近按钮放在框架中,而要放在不同的框架中。复选框具有同时多项选择功能,题中“选课情况”足可以多选的,因此可以用一组控件数组复选选框来作为选择框更合适。23.在窗体上画一个名称为 List1 的列表框,一个名称为 Label1 的标签。列表框中显示若干国家的名称,当单击列表中的某个国家名时,在标签中显示选中国家的名称。下列正确实现上述功能的程序是( )。A) Private Sub List1_Click()Labe11. Camion=List1. ListIndexEnd SubB) Private Sub List1_Click()Labe11.
35、 Name=List1. ListIndexEnd SubC) Private Sub List1_Click()Labe11.Name=List1. TextEnd SubD) Private Sub List1_Click()Labe11. Caption=List1. TextEnd Sub(分数:2.00)A.B.C.D. 解析:解析 ListIndex 属性返回或设置控件中当前列表项的索引号; Text 属性返回列表框中当前列表项的文本内容;Label1 标签在 Caption 属性中显示内容,而 Name 属性代表 Label1 的名字。24.下列程序段的执行结果为( )。a=95
36、if a60ThenI=1if a70Thenl=2if a80Thenl=3if a90ThenI=4Print“I=“;IAI=1 BI=2 CI=3 DI=4(分数:2.00)A.B.C.D. 解析:25.要求当鼠标在图片框 P1 中移动时,立即在图片框中显示鼠标的位置坐标。下面能正确实现上述功能的事件过程是A)Private Sub P1_MouseMove(Button As Integer,Shift As Integer,X As Single,Y As Single) Print X,YEnd SubB)Private Sub P1_MouseDown(Button As In
37、teger,Shift As Integer,X As Single,Y As Single)Picture.Print X,YEnd SubC)Private Sub P1_MouseMove(Button As Integer,Shift As Integer,X As Single,Y As Single)P1.Print X,YEnd SubD)Private Sub Form_MouseMove(Button As Integer,Shift As Integer,x As Single,Y As Single) P1.Print X,YEnd Sub(分数:2.00)A.B.C.
38、D.解析:解析 鼠标在图片框中移动,对象应为图片框控件,而不是窗体,选项 D)是错误的;鼠标移动触发的是 MouseMove 事件,选项 B)是错误的;在图片框内显示坐标,Print 的对象名为图片框,如果没有对象名,则默认输出到窗体上,所以正确的答案为 C)。26.以下语句用于打开一个顺序文件 Open “C:/MyFile.txt“ For OutPut,但是该语句的一个重要错误是没有A) 指定打开方式 B) 指定文件号C) 指定打开文件名 D) 指定文件类型(分数:2.00)A.B. C.D.解析:解析 打开顺序文件时,一定要指定一个文件号才能打开,否则出错。27.下列成员中不属于主窗口
39、的是( )。A最大化按钮 B状态栏C系统菜单 D工具栏(分数:2.00)A.B. C.D.解析:28.设有以下循环结构:Do循环体Loop While条件则以下叙述中错误的是_。A) 若“条件”是一个为 0 的常数,则一次也不执行循环体B) “条件”可以是关系表达式、逻辑表达式或常数C) 循环体中可以使用 Exit Do 语句D) 如果“条件”总是为 True,则不停地执行循环体(分数:2.00)A. B.C.D.解析:评析 DoLoop While 循环是先执行一次循环体,再判断条件是否为 True,如为 True,则继续执行循环体,如为 False,则结束。所以如果条件是一个为 0 的常数
40、,即条件为 False,则执行一次循环体后退出。29.窗体上有 Text1、Text2 两个文本框及一个命令按钮 Command1,编写下列程序:Dim y As IntegerPrivate Sub Command1_Click()Dim x As Integerx=2Text1.Text=p2(pl(x),y):Text2.Text=pl(x)End SubPrivate Function pl(x As Integer)As Integerx=x+y:y=x+ypl=x+yEnd FunctionPrivate Function p2(x As Integer,y As Integer)
41、As Integerp2=2*x+yEnd Function程序运行后,第一次单击和第二次单击命令按钮后,文本框 Text1 和 Text2 内的值分别是( )。A) 2 42 4B) 2 44 8C) 10 1058 58D) 4 48 8(分数:2.00)A.B.C. D.解析:解析 本题考查函数的调用以及变量的作用域。在命令按钮单击事件中调用 p2 函数,p2 函数的参数为函数 p1,因此首先计算 p1 调用以后产生的结果。第一次调用函数 p1,变量 y 为窗体级变量,p1调用结束后 y 为 2,p1 为 4:调用 p2,得到 p2 值为 10,x 的值为 2;继续调用 p1(x),此时
42、 y 值为 2,调用结束以后 p1 为 10。继续单击命令按钮,此时 x 值为 2,而 y 的值为 6,其余计算方法和第一次单击时相同。30.如果准备读文件,打开顺序文件“text.dat“的正确语句是A) Open “text.dat“ For Write As#1B) Open “text.dar“ For Binary As#1C) Open “text.dat“ For Input As#1D) Open “text.dat“ For Random As#1(分数:2.00)A.B.C. D.解析:解析 顺序文件的读操作由 Input 语句来实现。31.下面的程序运行结果是( )。Pr
43、ivate Sub Form_Click()i=0Doi=i+1if i10 then Exit DoLoop Until i10Print iEnd SubA0 B1 C10 D11(分数:2.00)A.B.C.D. 解析:32.下列程序段的执行结果为_。X=2Y=1If X*Y1 Then Y=Y-1 Else Y=-1Print Y-X0A) True B) False C) -1 D) 1(分数:2.00)A.B. C.D.解析:评析 格式:表达式 1 比较运算符表达式 2关系表达式的比较规则是:如果两个表达式都是数值,则进行数值比较。如果两个表达式都是字符串,则进行字符串比较。如果一
44、个表达式是数值而另一个是字符串,则数值表达式小于字符串表达式。该题中,X*Y=2*1=2,所以 X*Y1 为假,执行 Else 分支,Y=-1 此时 Y-X=-1-2=-3,所以 Y-X0 为假。在 Visual Basic 中,关系表达式的值用 True 表示真;用 False 表示假。33.要使某菜单能够通过按住键盘上的 Alt 键及 K 键打开,应( )。A在“名称”栏中“K”字符前加上“bEnd SubSub p1(x As Integeh By Val y As Integer)x=x+10y=y+20End SubSub p2(ByVal x As Integer,y As Int
45、eger)x=x+10y=y+20End SubSub p3 (ByVal x As Integer,ByVal y As Integer)x=x+10y=y+20End Sub该程序运行后,单击窗体,则在窗体上显示的内容是:a=U /U和 b=U /U。(分数:4.00)填空项 1:_ (正确答案:30)解析:填空项 1:_ (正确答案:70)解析:46.设窗体上有一个名称为 CD1 的通用对话框、一个名称为 Text1 的文本框和一个名称为 Command1 的命令按钮。程序执行时,单击 Command1 按钮,则显示打开文件对话框,操作者从中选择一个文本文件,并单击对话框上的“打开”按钮
46、后,则可打开该文本文件,并读入一行文本,显示在 Text1 中。下面是实现此功能的事件过程,请填空。Private Sub Command1_Click()CD1.Filter=“文本文件|*.txt|Word 文档|*.doc“CD1.FilterIndex=1CD1.ShowOpenIf CD1.FileName“ ThenOpenU /UFor Input As #1Line Input #1, Ch$Close #1Text1.Text=U /UEnd IfEnd Sub(分数:4.00)填空项 1:_ (正确答案:(9)CD1.FileName (10)ch)解析:解析 根据题中代码,要打开文本文件,应该在第9空填写选择好的文件名,文件名从通用对话框 CD1 中获得,所以第9空填 CD1.FileName;打开文件后,读入一行文本放入到了 Ch 变量中,所以为了将读入的一行文本显示在 Text1 中,应在第10空填写 ch。