VB期末考试试卷及答案一·选择题1.Visual Basic是一种面向对象的程序设计语言,构成对象的三要素是( B )A属性、控件和方法 B属性、事件和方法C窗体、控件和过程 D控件、过程和模块2. 所有控件都有一个共同的属性,这个属性是( C )A textB fontC nameD caption3. 下列叙述中错误的是( A )A 工程文件扩展名是.vbgB 标准模块文件的扩展名是.basC 窗体模块的扩展名是.frmD 类模块的扩展名是.cls4. 当要编写一个新的Visual Basic程序时,所做的第一件事是( A )A 新建一个工程B 编写代码C 设置属性D 添加Active X控件5. 下面控件中,没有caption属性的是( B )A 框架B 组合框C 命令按钮D 复选按钮6. 在文件框中输入字符时,若只显示某个字符,如(*),应设置属性是( B )A MultiLineB PasswordCharC TextD selText7. 若要将窗体从内存中卸载出去,其实现的方法是( D )A ShowB HideC LoadD UnLoad8. 下列关于过程叙述不正确的是( D )A 过程的传值调用是将实参的具体值传值传递给形参B 过程的传址调用是将实参在内存的地址传递给形参C 过程的传值调用参数是单向传递的,过程的传址调用参数是双向传递的D 无论过程传值调用还是传地址调用,参数传递都是双向的9. 某人创建1个工程,其中的窗体名为Form1,之后又添加了1个名为Form2的窗体,并希望程序执行时先显示Form2窗体,那么,他需要做的工作是( C )A 在Form1的Load事件过程中加入语句Load Form2B 在Form2的Load事件过程中加入语句Form2.ShowC 在“过程属性”对话框中把“启动对象”设置为Form2D 在Form2的TabIndex属性设置为1,把Form1的TabIndex属性设置为210. 以下关于文件的叙述中,正确的是( B )A 以Output方式打开一个不存在的文件时,系统将显示出错信息B 以Append方式打开的文件,既可以进行读操作,也可以进行写操作C 在随机文件在,每个记录的长度是固定的D 无论是顺序文件还是随机文件,其打开的语句和打开的方式都是完全相同的11. 设a=6,b=8,c=10 则函数IIf(a<b,Iif(b<c,c,b),a+b)的返回值是( A )A 10B 6C 8D 1212. 下面程序的执行结果为( B )I=”1” : j=”2”I=val(i)+val(j)J=val(“12”)If i<>j Then print i-j Else printj-iA 9B -9C 12D 013. 下面程序的执行结果为( A )Dim S(10) AS IntegerFor i=0 to 10S(I)=2*iNext iPrint S(S(3))A 12B 6C 0D 4二·程序填空题:1.在窗体上画一个命令按钮(Command1)和一个标签(Label1),为命令按钮编写以下事件,其功能是求数组中各元素之和,并将结果在标签上显示,请在指定位置填上正确代码将程序补充完整。
Option Base 1Private Sub Command1_Click()Dim a(3,2) AS IntegerS =0For i= 1 to 3For j= 1 to 2a(I,j) = i+js= 【1】Next jNext i【2】End Sub2.下面程序的功能是产生10个小于100(不含100)的随机正整数,并统计其中5的倍数所占比例,请在指定位置填上正确代码将程序补充完整。
Private Sub Command1_Click()RandomiseDim a(10) As IntegerFor j =1 to 10a(i)= 【3】If 【4】 Then k= k+1Print a(j)Next jPrintPrint k /10End Sub3.以下程序运行后,在Text1中输入任意字符串,单击命令按钮,将Text1中的字符串转换为大写,再将字符串逆置(如ABCD--DCBA),在Text2中显示逆置后的字符串。
请在指定位置填上正确代码将程序补充完整。
Private Sub Command1_Click()St = Ucase(Text1.text)For i= 【5】 To 1 Step -1S2= s2+Mid(s1, 【6】 , 1)Text2.text= s2End Sub4.Next i设有如下的循环,要求程序运行时执行3次循环,请在指定位置填上正确代码将程序补充完整。
Dim x As IntegerX = 1Dox = x+2Print xLoop Until 【7】5.在窗体上画一个组合框(Combo1)、一个列表框(List1)和一个命令按钮(Command1)。
下面程序的功能是在组合框中选择一个大学名称,单击命令按钮,则所选大学名称将添加在列表框中,当组合框中没有要选的大学名称时,输入一个名称,则此大学名称在添加列表框中的同时也会添加到组合框中,请在指定位置填上正确代码将程序补充完整。
Private Sub Form_Load()Combo1.AddItem”交通大学”Combo1.AddItem”理工大学”Combo1.AddItem”财经大学”Combo1.AddItem”外贸大学”End SubPrivate Sub Command1_Click()【8】Flag=FlaseFor i=0 to 【9】If Combo1.List(i)=Combo1.Text Thenflag=True : Eixt ForEnd IfNext iIf Not flag Then 【10】End Sub6.下面程序的功能是对数组的元素值用选择法按递增顺序排序,请在指定位置填上正确代码将程序补充完整。
Private Sub Command1_Click()Dim ia(),i%,max%,imax%.t%Ia=Array(3,8,5,6,7,4,9)For i =0 To 5 : imax = iFor j = i+1 To 6If 【11】 Then imax =jNext jT=ia(i) : 【12】 : ia(imax)=tNext iFor i=0 To 6 : Print ia(i) : Next iEnd Sub7.窗体上有名称为Command1的命令按钮及名称为Text1、能显示多行文本的文本框。
程序运行后,如果单击命令按钮,则可打开磁盘文件c:\test.txt,并将文件中的内容(多行文本)显示在文本框中。
下面是实现此功能的程序,请在指定位置填上正确代码将程序补充完整。
Private Sub Command1_Click()Text1=””Open”c:\test.txt” For Input As #1Do While Not 【13】Line Input#1,SText1.text=Text1.text+ 【14】 +chr(13)+chr(10)Loop【15】End Sub答案: 1.S+a(I,j) bel1 0 = S 3.Int(Rnd*99) 4.a(i) mod 5=05.Len(S1)6.i7.x=78.List1.AddItemCombo1.text9.3/ListCount bo1.AddItem Combo1.text11.a(j)>imax12.ia(i)=ia(imax) 13.Eof 14. S 15.Close #1三·阅读程序,在答题纸指定位置写出程序运行结果。
1.以下程序运行后,单击命令按钮,写出程序的运行结果。
Private Sub Command1_Click()Dim n%,b,tt =1 : b =1 : n =2Do While n<=4If b > 1 Then Exit Dob = b*n : t = t+b : n = n+1LoopPrint “t=”& tEnd Sub2.在窗体中添加一个命令按钮Command1,并编写如下程序:Private Sub Command1_Click()X =InputBox(x)If x^2<=9 Then y= 1/xIf x^2>9 Then y= x^2+1If (x^2)-7=9 Then y=xPrint “y=”&yEnd Sub程序运行后,在InputBox中输入4,单击命令按钮,写出程序的运行结果。
3.窗体上画一个命令按钮,并编写以下事件过程和子过程:Private Sub Command1_Click()Dim x As Integer, y As Integerx =12 : y = 20Call Value(x,y)Print “x=”&x, “y=”&yEnd SubPrivate Sub Value(ByVal m As Integer, n As Integer)m=m*2 :n=n-5程序运行后,单击命令按钮,写出程序的输出结果。
4.窗体上画一个命令按钮和一个图像框,并编写以下事件过程: Private Sub Command1_Click()Dim a(3,3)For m =1To3For n= 1 To 3If n = m Or n = 4 –m Thena(m,n)=m+nElsea(m,n)=0End IfPicture1.Print a(m,n)Next nPicture1.PrintNext m程序运行后,单击命令按钮,图像框中显示的内容是什么?5.在窗体上画一个列表框和一个命令按钮Command1,然后编写如下程序:Private Sub Command1_Click()List1.RemoveItem1List1.RemoveItem2End SubPrivate Sub Form_Load()List1.AddItem”兰州”List1.AddItem”甘肃”List1.AddItem”交通”List1.AddItem”大学”End Sub程序运行后,单击命令按钮,写出在列表框中显示的结果。
答案: 1. 3 2. 4 3. 12;15 4. 2 0 4;0 4 0;4 0 65兰州;大学四·编写程序:输出(1,100)之间同时被5和7整除的数的个数及其它们的和。
答案:Private Sub Form1_Click()Dim s%,c%For i=1 to 100If i Mod 5=0 And i Mod 7=0 Thens = s+1c = c +iEnd IfNext iPrint s, cEnd Sub。