武汉职业技术学院 2005-2006学年度第二学期考试试卷Al 考试科目:《Ⅴ isual basic程序设计》 适用班级:计算机系网络04401班答题时间:100分钟 班级 学号 姓名 选择题(2分/题,共20分) (1)以下不能在"工程资源管理器"窗口中列出的文件类型是 A). bas B). res c). frm D).ocx (2)以下关于窗体的描述中,错误的是 A)执行 Unload Form1语句后,窗体Form1消失,但仍在内存中 B)窗体的Load事件在加载窗体时发生 C)当窗体的 Enabled属性为 False时,通过鼠标和键盘对窗体的操作都被 禁止 D)窗体的 Height、 Width属性用于设置窗体的高和宽 (3)下列可作为Ⅴ isual basic变量名的是 A) A#a B) 4A C)?xy D)constA (4)设有如下的记录类型 Type Student number As string age As Integer End Type 则正确引用该记录类型变量的代码是 A) Student. name="张红"B) Dim s as student 张红 C) Dim s As Type Student D) Dim s As Type s name="张红 s name=”张红 (5)执行如下语句 a= Input Box("Today","Tomorrow", "Yesterday") 将显示一个输入对话框,在对话框的输入区中显示的信息是 A) Today B) Tomorrow C) Yesterday D)Day before yesterday (6)在窗体上画一个名称为Lt的列表框,一个名称为 Labell的标签。列表框中 显示若干城市的名称。当单击列表框中的某个城市名时,在标签中显示选中城市的 名称。下列能正确实现上述功能的程序是 共8页
第1页 共8页 武汉职业技术学院 2005~2006 学年度第二学期考试试卷[A] 考试科目:《Visual Basic 程序设计》 适用班级:计算机系网络 04401 班 答题时间:100 分钟 班级 学号 姓名 一、 选择题(2 分/题,共 20 分) (1)以下不能在"工程资源管理器"窗口中列出的文件类型是 A).bas B).res C).frm D).ocx (2)以下关于窗体的描述中,错误的是 A)执行 Unload Form1 语句后,窗体 Form1 消失,但仍在内存中 B)窗体的 Load 事件在加载窗体时发生 C)当窗体的 Enabled 属性为 False 时,通过鼠标和键盘对窗体的操作都被 禁止 D)窗体的 Height、Width 属性用于设置窗体的高和宽 (3)下列可作为 Visual Basic 变量名的是 A)A#A B)4A C)?xy D)constA (4)设有如下的记录类型 Type Student number As String name As String age As Integer End Type 则正确引用该记录类型变量的代码是 A) Student.name = "张红" B) Dim s As Student s.name = "张红" C) Dim s As Type Student D) Dim s As Type s.name = "张红" s.name = "张红" (5) 执行如下语句: a = InputBox("Today", "Tomorrow", "Yesterday") 将显示一个输入对话框,在对话框的输入区中显示的信息是 A)Today B)Tomorrow C)Yesterday D)Day before yesterday (6) 在窗体上画一个名称为 List1 的列表框,一个名称为 Label1 的标签。列表框中 显示若干城市的名称。当单击列表框中的某个城市名时,在标签中显示选中城市的 名称。下列能正确实现上述功能的程序是
A) Private Sub ListI Click B) Private Sub ListI Click Labell Caption= List l ListIndex Label l. Name= List1. ListIndex End sub End Sub C) Private Sub List1 Click D) Private Sub List1 Click abell. Name List Text Labell Caption=ListIText End Sub End Sub (7)在窗体上画三个单选按钮,组成一个名为 chkOption的控件数组。用于标识各 个控件数组元素的参数是 A) Tag B)Index C) ListIndex D) Name (8)在窗体上画一个命令按钮,名称为 Command l,然后编写如下事件过程: Option Base O Private Sub Commandl Click Dim city As variant city=Aray("北京"”,"上海","天津","重庆") Print city(l) 程序运行后,如果单击命令按钮,则在窗体上显示的内容是 A)空白 B)错误提示 C)北京 D)上海 (9)假定有以下函数过程: Function Fun(s As String)As String Dim sl As String sl=UCase(Mid(s, 1, 1))+sl Fun=sI End Function 在窗体上画一个命令按钮,然后编写如下事件过程: Private Sub Commandl Click Dim Str As String, Str2 As String Strl= Input Box("请输入一个字符串") Str2= Fun(strl) Print str End Sub 程序运行后,单击命令按钮,如果在输入对话框中输入字符串" abcdefg",则单 击"确定"按钮后在窗体上的输出结果为 A)abcdefg B)ABCDEFG C) gfedcba D)GFEDCBA (10)设有语句
第2页 共8页 A) Private Sub List1_Click() B)Private Sub List1_Click() Label1.Caption = List1.ListIndex Label1. Name = List1. ListIndex End Sub End Sub C) Private Sub List1_Click() D)Private Sub List1_Click() Label1.Name = List1.Text Label1.Caption = List1.Text End Sub End Sub (7) 在窗体上画三个单选按钮,组成一个名为 chkOption 的控件数组。用于标识各 个控件数组元素的参数是 A)Tag B)Index C)ListIndex D)Name (8) 在窗体上画一个命令按钮,名称为 Command1,然后编写如下事件过程: Option Base 0 Private Sub Command1_Click() Dim city As Variant city = Array("北京", "上海", "天津", "重庆") Print city(1) End Sub 程序运行后,如果单击命令按钮,则在窗体上显示的内容是 A)空白 B)错误提示 C)北京 D)上海 (9 )假定有以下函数过程: Function Fun(S As String) As String Dim s1 As String For i = 1 To Len(S) s1 = UCase(Mid(S, i, 1)) + s1 Next i Fun = s1 End Function 在窗体上画一个命令按钮,然后编写如下事件过程: Private Sub Command1_Click() Dim Str1 As String, Str2 As String Str1 = InputBox("请输入一个字符串") Str2 = Fun(Str1) Print Str2 End Sub 程序运行后,单击命令按钮,如果在输入对话框中输入字符串"abcdefg",则单 击"确定"按钮后在窗体上的输出结果为 A)abcdefg B)ABCDEFG C) gfedcba D)GFEDCBA (10)设有语句
Open"c: \ Test. Dat"For Output As#I 则以下错误的叙述是 A)该语句打开C盘根目录下一个已存在的文件 Test. Dat )该语句在C盘根目录下建立一个名为 Test dat的文件 C)该语句建立的文件的文件号为1 D)执行该语句后,就可以通过 Print#语句从文件 Test Dat中读出信息 二、填空题(每空2分,共26分) 请将每空的正确答案写在答题卡【1】~【13】序号的横线上,答在试卷上不得分。 (1)Ⅴ isual basic中有一种控件组合了文本框和列表框的特性,这种控件是【1】 (2)Ⅴ isual basic提供的对数据文件的三种访问方式为随机访问方式、【2】和二 进制访问方式 (3)执行下面的程序段后,变量S的值为【3】 For i=2.6 To 4.9 Step 0.6 Next i (4)为了在运行时把dpic文件夹下的图形文件ajpg装入图片框 Picture,所使 用的语句为【4】 (5)计时器控件能有规律的以一定时间间隔触发【5】事件,并执行该事件过程 中的程序代码 (6)以下程序的功能是:生成20个200到300之间的随机整数,输出其中能被5 整除的数并求出它们的和。请填空。 Private Sub Commandl Click For i=1 To 20 x=Int(【6】*101+200 If【7】=0Then End if Next i Print"Sum=" S End Sub (7)设有如下程序 Private Sub Form Click Dim a As Integer, b As Integer a=20:b=50 pI a, b
第3页 共8页 Open "c:\Test.Dat" For Output As #1 则以下错误的叙述是 A)该语句打开 C 盘根目录下一个已存在的文件 Test.Dat B)该语句在 C 盘根目录下建立一个名为 Test.Dat 的文件 C)该语句建立的文件的文件号为 1 D)执行该语句后,就可以通过 Print #语句从文件 Test.Dat 中读出信息 二、 填空题(每空 2 分,共 26 分) 请将每空的正确答案写在答题卡【1】~【13】序号的横线上,答在试卷上不得分。 (1)Visual Basic 中有一种控件组合了文本框和列表框的特性,这种控件是 【1】 。 (2)Visual Basic 提供的对数据文件的三种访问方式为随机访问方式、【2】和二 进制访问方式。 (3)执行下面的程序段后,变量 S 的值为 【3】 。 S = 5 For i = 2.6 To 4.9 Step 0.6 S = S + 1 Next i (4)为了在运行时把 d:\pic 文件夹下的图形文件 a.jpg 装入图片框 Picture1,所使 用的语句为 【4】 。 (5)计时器控件能有规律的以一定时间间隔触发 【5】 事件,并执行该事件过程 中的程序代码。 (6)以下程序的功能是:生成 20 个 200 到 300 之间的随机整数,输出其中能被 5 整除的数并求出它们的和。请填空。 Private Sub Command1_Click() For i = 1 To 20 x = Int( 【6】 * 101 + 200) If 【7】 = 0 Then Print x S = S + 【8】 End If Next i Print "Sum = "; S End Sub (7)设有如下程序 Private Sub Form_Click() Dim a As Integer, b As Integer a = 20: b = 50 p1 a, b
Print "a=. a"b=" b End Sub Sub pl(x As Integer, By Val y As Integer End Sub 该程序运行后,单击窗体,则在窗体上显示的内容是:a=【9】和b=【10】。 (9)在窗体上画一个名称为 Combo的组合框,画两个名称分别为 Labell和Labe2 及 Caption属性分别为"城市名称"和空白的标签。程序运行后,当在组合框中输入 个新项后按回车键(ASCI码为13)时,如果输入的项在组合框的列表中不存在 则自动添加到组合框的列表中,并在 Label2中给出提示"已成功添加输入项"如图所 示;如果存在,则在 Label2中给出提示"输入项已在组合框中"。请在【11】、【12】 和【13】处将程序补充完整 Private Sub Combo【ll】( KeyAscii As Integer) If Key Ascii=13 Then For i=0 To Combo. List count-1 If Combo.Text=【12】Then Labe2 Caption="输入项已在组合框中” Exit Sub End lf Next i Label2 Caption="已成功添加输入项 ombo1.【13】 Cobol.Text End If End Sub 三、读程填程题(共22分) 1.求100以内的素数之和,(每空2分,共10分) Private Sub Commandl Click Dim flag As boolean For i= 2 To 100 flag Forj=2 To i-1 顶页共8页
第4页 共8页 Print "a="; a, "b="; b End Sub Sub p1(x As Integer, ByVal y As Integer) x = x + 10 y = y + 20 End Sub 该程序运行后,单击窗体,则在窗体上显示的内容是:a = 【9】 和 b = 【10】 。 (9)在窗体上画一个名称为 Combo1 的组合框,画两个名称分别为 Label1 和 Label2 及 Caption 属性分别为"城市名称"和空白的标签。程序运行后,当在组合框中输入 一个新项后按回车键(ASCII 码为 13)时,如果输入的项在组合框的列表中不存在, 则自动添加到组合框的列表中,并在 Label2 中给出提示"已成功添加输入项"如图所 示;如果存在,则在 Label2 中给出提示"输入项已在组合框中"。请在 【11】、【12】 和【13】处将程序补充完整。 Private Sub Combo1_ 【11】 (KeyAscii As Integer) If KeyAscii = 13 Then For i = 0 To Combo1.ListCount-1 If Combo1.Text = 【12】 Then Label2.Caption = "输入项已在组合框中" Exit Sub End If Next i Label2.Caption = "已成功添加输入项" Combo1. 【13】 Combo1.Text End If End Sub 三、 读程填程题(共 22 分) 1.求 100 以内的素数之和,(每空 2 分,共 10 分) Private Sub Command1_Click() Dim flag As Boolean s = 0 For i = 2 To 100 flag = _________________ For j = 2 To i – 1
It Then End If If flag= Then Next i 2.在控件数组 Picture(0)、 Picture(1)、 Picture(2)和 Picture(3)中移动图片,要求图 片可以在任意两个图片框中拖放,请补全程序。(1到4共4分,其他每空2分, 共12分) Dim you(3)As Boolean Private Sub Form Load Picturel(0). Picture=LoadPicture("d: \a bmp") you(o) End sub Private Sub Picturel Drag Drop(Index As Integer, Source As Control, X As If you(Index)= False Then Picturel(Index). Picture= Source Picture Picture you(Index = True =False End lf End Sub
第5页 共8页 If ____________ Then __________________ End If Next j If flag =_________ Then ______________ Next i MsgBox (s) End Sub 2.在控件数组 Picture(0)、Picture(1) 、Picture(2)和 Picture(3)中移动图片,要求图 片可以在任意两个图片框中拖放,请补全程序。(1 到 4 共 4 分,其他每空 2 分, 共 12 分) Dim you(3) As Boolean Private Sub Form_Load() Picture1(0).Picture = LoadPicture("d:\a.bmp") you(0) = _________:you(1) = ________ you(2) = _________:you(3) = ________ End Sub Private Sub Picture1_DragDrop(Index As Integer, Source As Control, X As Single, Y As Single) If you(Index) = False Then Picture1(Index).Picture = Source.Picture Source.Picture = ________________________ you(Index) = True you(________________________) = False End If End Sub