一、选择题:35题,2分/题,共70分 下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。 1.保存一个工程至少应保存两个文件,这两个文件分别是(B) A)文本文件和工程文件 B)窗体文件和工程文件 C)窗体文件和标准模块文件 D)类模块文件和工程文件 2.当对命令按钮的Picture属性装入.bmp图形文件后,命令按钮上并没有显示所需的图形,原因是没有对某个属性设置为1,该属性是(B) A)MousePicture B)Style C)DownPicture D)DisabledPicture 3.下面叙述正确的是(B) A)Spc函数既能用于Print方法中,也能用于表达式 B)Space函数既能用于Print方法中,也能用于表达式 C)Spc函数与Space函数均生成空格,没有区别 D)以上说法均不对 4.假设变量bool_x是一个布尔型(逻辑型)的变量,则下面正确的赋值语句是(D) A)bool_x="False" B)bool_x=.False. C)bool_x=#False# D)bool_x=False 5.要存放如下方阵的数据,在不浪费存储空间的基础上,能实现声明的语句是(D) 1 2 3 2 4 6 3 6 9 A)Dim A(9) As Integer B)Dim A(3,3) As Integer C)Dim A(-1 to 1,-3 to -1) As Single D)Dim A(-3 to -1,1 to 3) As Integer 6.下面子过程语句说明合法的是(D) A)Sub f1(ByVal n() As Integer) B)Sub f1(n() As Integer)As Integer C)Function f1(f1 As Integer) As Integer D)Finction f1(ByVal n As Integer) 7.已知X>Y,A>B,正确表示它们之间关系的式子是(B) A)Sgn(Y-X)-sgn(A-B)<0 B)Sgn(Y-X)-Sgn(A-B)=-2 C)Sgn(Y-X)-Sgn(A-B)=0 D)Sgn(Y-X)-Sgn(A-B)=-1 8.设a=2,b=4,c=6,下列表达式的值为真的是(D) A)a>b And cB)a>b Or cC)a>b Xor cD)a>b Eqv c9.设S=“中华人民共和国”,表达式Left(S,1)+Right(S,1)+Mid(S,3,2)的值为(B) A) “中华民国” B) “中国人民” C) “中共人民” D) “人民共和” 10.下列表达式的值为2123的是(B) A) Val("123asd") & 2000 B) Val("123asd") + 2000 C) Str(123) & "2000" D)Str(123)+"2000"
11.下列叙述不正确的是(C) A)InputBox函数返回值为字符型 B)MsgBox函数返回值为所单击按钮的键值 C)MsgBox语句返回值为所单击按钮的键值 D)Shell函数返回值为所执行文件的工作代码 12.下列叙述不正确的是(A) A)命令按钮的默认属性为Caption B)标签的默主属性为Caption C)复选框的默认属性为value D)滚动条的默认属性为value 13.下列各程序段中,正确的是(C) A)If 10 < 10 Then a=a+10 B)If a> 10 Then a= a+1 Else a= a+ 5 End If C)If a <=10 Then a=a + 1 Else End If D)If a <=10 Then a=a + 1 Else If a <=20 Then a=a + 10 End If 14.在窗体上画一个命令按钮,名称为Command1。然后编写如下程序: Private Sub Command1_Click() For I= 1 to 2 For J=1 to I Print String (I,"Hello"); Next J Print Next I End Sub 程序运行后,如果单击命令按钮,则在窗体上显示的内容是(B) A)H HH HHH B)H HHHH C)HHHHH D)H HH HHHH 15.为了使图像框与图片框的大小适应图片的大小 ,下边属性组设置正确的是(B) A)Autosize= Ture Stretch= True B)Autosize= Ture Stretch= False C)Autosize= False Stretch= True D)Autosize= False Stretch= False 16.假设 x的值为5,则在执行以下语句时,其输出结果为“OK”的Select case语句是(C) A)Select Case X Case 10 to 1 Print "OK" End Select B)Select Case X Case Is > 5,Is <5 Print "OK" End Select C)Select Case X Case Is > 5,1,3 to 10 Print "OK" End Select D)Select Case X Case 1,3 Is > 5 Print "OK" End Select
17.有如下程序: Private Sub Form_Click() Dim check As Boolean, n As Integer check=False n= 0 Do Do While n< 10 n=n + 1 If n= 5 Then check=True Exit Do End If Print n; Loop Loop Until check=True End Sub 程序运行后,输出的结果是(B) A)1 2 3 B)1 2 3 4 C)1 2 3 4 5 D)1 2 3 4 5 6 18.在运行阶段,要在文本框Text1获得焦点时选中文本框中所有内容,对应的事件过程是(A) A)Private Sub Text1_GotFocus() Text1.SelStart=0 Text1.SelLength=Len(Text1.text) End Sub B)Private Sub Text1_LostFocus() Text1.SelStart=0 Text1.SelLength=Len(Text1.text) End Sub C)Private Sub Text1_Change() Text1.SelStart=0 Text1.SelLength=Len(Text1.text) End Sub D)Private Sub Text1_SetFocus() Text1.SelStart=0 Text1.SelLength=Len(Text1.text) End Sub 19.有如程序(D) Private Sub From_Activate() Dim a a=Array(1 ,2 ,3, 4, 5) For i=LBound(a) To UBound(a) a(i)=i*a(i) Next i Print i,LBound(a),UBound(a),a(i) End Sub A)4 0 4 25 B)5 0 4 25 C)不确定 D)程序出错 20.在窗体上画一个水平滚动条,名称为HScroll1;再画一个文本框,名称为Text1。要想使用滚动条滑块的变化量来调用文本框中文字的大小,则可满足的语句是(C) A)Text1.FontName= HScroll1.Max B)Text1.FontSize= HScroll1.Min C)Text1.FontSize= HScroll1.value D)Text1.FontBold= HScroll1.value 21.在下列程序中,无论使用鼠标左键还是右键都能弹出菜单,且弹出菜单中的菜单项都响应鼠标单的是(D) A)Sub Form_MouseDown (Button As Integer,Shift As Integer, X As Single, Y As Single) PopupMenu_test,1 End Sub B)Sub Form_MouseDown (Button As Integer,Shift As Integer, X As Single, Y As Single) PopupMenu_test,0 End Sub C)Sub Form_MouseDown (Button As Integer,Shift As Integer, X As Single, Y As Single) PopupMenu_test End Sub D)Sub Form_MouseDown (Button As Integer,Shift As Integer, X As Single, Y As Single) PopupMenu_test,2 End Sub 22.假设在窗体上建立了一个通用对话框,其名称为CommonDialog1,然后画一个命令按钮Command1,并编写如下事件过程: Private Sub Command1_Click() CommonDialog1.Flags=4 CommonDialog1.Filter="all files(* . *)|* .*|text Files(* .Txt)|* .txt|Batch Filse(*.bat)|*.bat" CommonDialog1.FilterIndex=1 CommonDialog1.ShowOpen MsgBox CommonDialog1.FileName End Sub 程序运行后,单击命令按钮,将显示一个“打开”对话框,此时在“文件类型”对话框中显示的是(A) A)All Files(* . *) B)Text Files(*. Txt) C)Batch Files(.bat) D)不确定 23.按文件的内容划分有(C) A)顺序文件和随机文件 B)ASCII文件和二进制文件 C)程序文件和数据文件 D)磁盘文件和打印文件
24.有如下的程序: Private Sub Form_Click() Dim x As Integer, y As Integer a= 8 b= 3 Call test(6 ,a b+1) Print "主程序",6,a, b End Sub Sub test (x As Integer, y, As Integer, z As Integer) Print "子程序",x,y,z x = 2 y = 4 z = 9 End Sub 当运行程序后,显示的结果是(D) A)子程序6 4 3 主程序6 8 4 B)主程序6 4 3 子程序6 8 4 C)主程序6 8 4 子程序6 4 3 D)子程序6 8 4 主程序6 4 3 25.Cls 方法可清除窗体或图片框中的信息是(C) A)Picture属性设置的背景图案 B)在设计时放置的控件 C)程序运行时产生的图形和文字 D)以上方法都对 26.下列数组声明正确的是(D) A)n=5 Dim a(1 to n) As Integer B)Dim a(10) As Integer ReDim a(1 to 12) C)Dim a() As Single ReDim a(3 ,4) As Integer D)Dim a() As Integer n=5 ReDim a(1 to n) As Integer 27.下列控件中,没有Caption属性的是(B) A)框架 B)列表框 C)复选框 D)单选按钮 28.如下程序段定义了学生成绩的记录类型,由学号、姓名、三门课程成绩(百分制)组成。 Type Stud no As Integer name As String * 10 score (1 to 3) As Single End Type 若对某个学生的各数据项进行赋值,下列程序段正确的是(C) A)Dim S As Stud Stud.no =0201 Stud.name="李平" Stud.score=78,88,96 B)Dim S As Stud S.no =0201 S.name="李平" S.score=78,88,96 C)Dim S As Stud S.no =0201 S.name="李平" S.score(1)=78 S.score(2)=88 S.score(3)=96 D)Dim S As Stud Stud.no =0201 Stud.name="李平" Stud.score(1)=78 Stud.score(2)=88 Stud.score(3)=96 29.如果Form1是启动窗体,并且Form1的Load事件过程中有Form2.Show,则程序启动后(C) A)发生一个运行时错误 B)发生一个编译时错误 C)在所有的初始化代码运行后Form1是活动窗体 D)在所有的初始化代码运行后Form2是活动窗体 30.如果列表框(List1)中没有被选定的项目,则执行List1.RemoveItem List1.ListIndex语句的结果是(D) A)移去第一项 B)移去最后一项 C)移去最后加入列表一项 D)以上都不对
31.如下程序,运行的结果是(B) Private Sub Form_Click() Dim m As Integer,i As Integer,x(10) As Integer For i= 0 to 4 x(i)=i + 1 Next i For i=1 to 2 Call proc(x) Next i For i= 0 to 4 Print x(i); Next i End Sub Public Sub proc(a() As Integer) Static i As Integer Do a(i)=a(i)+a(i+1) i=i+1 Loop While i<2 End Sub A)3 4 7 5 6 B)3 5 7 4 5 C)2 3 4 4 5 D)4 5 6 7 8 32.假设有以下程序段: For I=1 to 3 For j=5 to 1 Step -1 Print I*j Next j Next I 则语句Print I*j的执行次数I、j的值分别是(A) A)15 4 0 B)16 3 1 C)17 4 0 D)18 3 1 33.在窗体上一个文本框,其名称为Text1,然后编写如下事件过程: Private Sub Text1_KeyPress(KeyAscii As Integer) Dim str As String ,n As Integer str = UCase (Chr(KeyAscii)) n=Len(str) Text1=String(n, str) End Sub 程序运行后,如果在键盘上输入单字母"K",则在文本框Text1中显示的内容为(B) A)kk B)kK C)KK D)Kk 34.下列叙述不正确的是(C) A)驱动器列表框是一种能显示系统中所有有效磁盘驱动器的列表框 B)驱动器列表框的Drive属性只能在运行时被设置 C)从驱动器列表框中选择驱动器能自动变更系统当前的工作驱动器 D)要改变系统当前的工作驱动器需要使用ChDrive语句 35.窗体上有Text1、Text2两个文本框及一个命令按钮Command1,编写下列程序: Dim y As Integer Private Sub Command1_Click() Dim x As Integer x=2 Text1.Text= p2(p1(x),y) Text2.Text= p1(x) End Sub Privage Function P1(x As Integer) As Integer x =x+y:y=x+y P1=x+y End Function Private Function P2(x As Integer, y As Integer) As Integer P2= 2*x+y End Function 当单击1 次和单击2次命令按钮后,文本框Text1和Text2内的值分别是(C) A)2 4 2 4 B)2 4 4 8 C)10 10 58 58 D)4 4 8 8
二、填空:每空2分,共30分。 1.在窗体上画一个命令按钮,名称为Command1,Caption属性设置为“确定”,画3个标签Label1、Label2和Label3,在label1中输入“这是一个绝对值的程序”,在Label2中输入“请输入x的值”,Label3将输出本题 结果,再画一个文体框,名称为Textl,用于输入x的值。当在文本框Textl输入一个负数,然后“确定”按钮,则在标签Label3中将输出该数的绝对值及信息,程序有运行情况如图2-3所示。请在[1]和[2]处填入适当的内容,将程序补充完整。(要求不用取绝对值函数) Private Sub Commandl_Click() Dim x As Single x=Val(Text1.Text) Label3.Caption="x=&x If x<0 Then[1] Label3.Caption=[2]+", x的绝对值是" &x End Sub 答案:x=-x; Label3.Caption 2.用单循环实现如图2-4所示图案。请在[3]和[4]处填入适当的内容,将程序补充完整。 Private Sub Form_Click() For i =1 To 10 Print Tab(15 -i);String([3],[4](i,1)) Next i End Sub 答案: 2*i-l;Right 3.下面是一个歌手大赛评分程序。10位评委,除去一个最高分和一个最低分,计算平均分(设满分为10分)。请在[5]、[6]、和[7]处填入适当的内容,将程序补充完整。 Private Sub Form_Click() Max= 0 Min= 10 For i = 1 To 10 x=Val(InputBox("请输入分数")) If [5] Then Max=x If [6] Then Min=x s =s + x Next i s = [7] p = s/8 Print "最高分";Max,"最低分";Min Print "最后得分";p End Sub 答案: x>Max;x4.窗体和控件名称如图2-5所示,当“电视机”和“付款方式”未被选定时,它们所在框架的控件不能使用,如果单击“确定”按钮,则在下面的标签中显示用户所选择的信息。请在[8]、[9]、[10]和[11]处填入适当的内容,将程序补充完整。 Private Sub Form__[8] Combo1.Enabled =False Textl.Enabled =False End Sub Private Sub Check2__Click() Option1.Enabled = False Option2.Enabled =False End Sub Private Sub [9] Combo1,Enabled = Not Combo1.Enabled Textl.Enabled = Not Text1.Enabled Option1.Enabled= Not Option1.Enabled Option2.Enabled= Not Option2.Enabled End Sub Private Sub Commandl_Click() If Check1.value = 1 Then Label1.Caption =Label1.Caption & [10] &vbCrlf Label1.Caption = Label1.Caption & [11] & vbClf End If If Check2.value=1 Then If Option1.value = True Then Label1.Caption=Label1.Caption&"现金付款"&vbCrLf Else Label1.Caption=Label1.Caption&"转帐付款"&vbCrLf End If End If End Sub 注:vbCrLf为回车符。 答案: Load();Checkl_Click();Combol.Text;Textl.Text

|