VB复习题Word格式.docx
《VB复习题Word格式.docx》由会员分享,可在线阅读,更多相关《VB复习题Word格式.docx(73页珍藏版)》请在冰豆网上搜索。
Fori=6To2Step-2
x=Mid(a,i,i):
y=Left(a,i)
z=Right(a,i):
z=UCase(X&
Y&
z)
Nexti
Printz
(A)ABA(B)BBABBA(C)ABBABA(D)AABAAB
◆控件在窗体上的位置是由___(12)___属性确定的。
(A)Width和Height(B)Top和Left(C)Width和Left(D)Top和Width
◆关于Name属性,以下叙述中___(13)___是正确的。
(A)窗体的Name属性指定窗体的名称,用于标识一个窗体。
(B)窗体的Name属性用于设置显示在窗体标题栏的文本。
(C)可以通过代码在程序运行中改变某个对象的Name属性值。
(D)对象的Name属性值可以设置为空。
◆下列名称中___(14)___可以作为VB的变量名。
(A)mod(B)m-d(C)tempVal(D)left
◆要求出变量x和y中较大的一个并保存在变量Max中,下面的程序段中___(15)___是不正确的。
(A)Max=IIf(x>
y,x,y)
(B)Ifx>
yThenMax=xElseMax=y
(C)Max=x
Ify>
=xThenMax=y
(D)Ify>
xThenMax=y
Max=x
◆执行以下语句后,a的值为___(16)___
DimaAsInteger
a=1
DoUntila=100
a=a+2
Loop
(A)102(B)100(C)溢出(D)101
◆对于语句Ifa=bThenc=d的语法分析,___(17)___是正确的。
(A)a=b和c=d都是赋值语句(B)a=b是关系表达式,c=d是赋值语句
(C)a=b和c=d都是关系表达式(D)a=b是赋值语句,c=d是关系表达式
◆运行下列程序段,单击两次命令按钮,则第二次单击时窗体中显示的结果是__(18)__。
PrivateSubCommand1_Click()
DimaAsInteger
StaticbAsInteger
a=a+5:
b=b+5
Printa,b
EndSub
(A)510(B)55(C)1010(D)00
◆在系统默认的情况下,Dima(3,4,2To5)定义的数组共有___(19)___个元素。
(A)36(B)48(C)60(D)80
◆下面的子过程定义语句中没有语法和逻辑错误的是___(20)___。
(A)SubS1(ByValn%())(B)SubS1(nAsInteger)AsInteger
(C)FunctionS1(ByValnAsInteger)(D)FunctionS1%(ByValS1AsInteger)
◆执行了下面程序后,组合框中数据项的值是___(21)___。
PrivateSubForm_Click()
Fori=1to6
Combo1.AddItemi
Fori=1to3
Combo1.RemoveItemi
(A)156(B)135(C)456(D)246
◆设窗体上有一个列表框控件List1,且其中含有若干列表项。
则以下能表示当前被选中的列表项内容的是__(22)___.
(A)List1.ListB)List1.ListIndex(C)List1.Index(D)List1.Text
◆在窗体上画一个名称为Command1的命令按钮和一个名称为Text1的文本框,然后编写如下事件过程:
n=Val(Text1.Text)
Fori=2Ton
Forj=2Tosqr(i)
IfiModj=0ThenExitFor
Nextj
Ifj>
Sqr(i)ThenPrinti
该事件过程的功能是__(23)__
(A)输出n以内的奇数(B)输出n以内的偶数
(C)输出n以内的素数(D)输出n以内能被j整除的数
◆如果要在菜单中添加一个分隔线,则应将其标题属性设置为___(24)_____。
(A)=(B)*(C)&
(D)-
◆以下关于文件的叙述中正确的是__(25)__。
(A)一个记录中所包含的各元素的数据类型都是相同的
(B)随机文件中每个记录的长度是固定的
(C)Open命令的作用是打开一个已经存在的文件
(D)使用Input#语句可以从随时机文件中读取数据
◆以下定义数组或给数组元素赋值的语句中,正确的是__(26)__。
(A)DimaAsVariant(B)Dima(10)AsIntegera=Array(1,2,3,4,5)a=Array(1,2,3,4,5)(C)Dima%(10)(D)Dima(3),b(3)AsIntegera
(1)="
ABCDE"
a(0)=0:
a
(1)=1:
a
(2)=2:
b=a
窗体中有一个命令按钮,编写如下程序,程序运行后,输出结果为___(27)___。
PrivateSubtest(p,m,n)
p=p+1:
m=m+1:
n=n+1
Print“Sub:
”;
p;
m;
n
EndSub
a1=1:
b1=2:
c1=3
Calltest(a1,b1+3,(c1))
Print“Main:
a1;
b1;
c1
(A)Sub:
264
Main:
(B)Sub:
164
(C)Sub:
123
(D)Sub:
223
◆以下语句用于打开一个顺序文件Open"
C:
\MyFile.txt"
ForOutPut,但是该语句的一个重要错误是没有___(28)_____。
(A)指定打开方式(B)指定文件号(C)指定打开文件名(D)指定文件类型
◆
PrivateSubTimer1_Timer()
IfLabel1.Left<
WidthThen
Label1.Left=Label1.Left+20
Else
Label1.Left=0
EndIf
在窗体上画一个名称为Label1、标题为“VisualBasic考试”的标签,两个名称分别为Command1和Command2、标题分别为“开始”和“停止”的命令按钮,然后画一个名称为Timer1的计时器控件,并把其Interval属性设置为500。
编写如下程序:
PrivateSubForm_Load()
Timer1.Enabled=False
Timer1.Enabled=True
程序运行后,单击“开始”按钮,标签在窗体中移动。
对于这个程序,以下叙述中错误的是___(29)___
(A)标签的移动方向为自右向左
(B)单击“停止”按钮后再单击“开始”按钮,标签从停止的位置继续移动
(C)当标签全部移出窗体后,将从窗体的另一端出现并重新移动
(D)标签按指定的时间时隔移动
◆设有如下程序,通过For循环计算一个表达式的值,这个表达式是___(30)____:
DimsumAsDouble,xAsDouble
sum=0:
n=0
Fori=1To5
x=n/i:
n=n+1:
sum=sum+x
Next
(A)1+1/2+2/3+3/4+4/5(B)1+1/2+2/3+3/4
(C)1/2+2/3+3/4+4/5(D)1+1/2+1/3+1/4+1/5
二、填空题
VisualBasic中有三种类型的模块文件,即类模块、标准模块和___[1]___模块。
◆将数学式
写成VB表达式,应该是___[2]____。
◆赋值语句:
a=123+MID("
123456"
3,2)执行后,a变量中的值__[3]____。
◆VisualBasic提供的对数据文件的三种访问方式为顺序访问方式、___[4]____
和二进制访问方式。
◆执行下列语句序列,显示的结果是___[5]___。
a=2:
b=3:
c=4:
d=5
Print3>
2*bOra=cAndb<
>
cOrc>
d
◆运行下列程序,单击命令按钮,则Text1中显示___[6]___,窗体中显示___[7]___。
DimiAsInteger,jAsInteger,a(5,4)AsInteger
Fori=2To3
Forj=2To4
a(i,j)=i+j
Nextj
Nexti
Text1.Text=a(3,2)
Printa(3,1)
◆如下图,窗体上有两个命令按扭C1,C2及一个文本框Text1,当按下C1时,将C2的标题与Text1中的内容交换。
C2
C1
PrivateSubC1_Click()
DimaAsString
Form1.Caption="
交换后"
a=___[8]____
Text1.Text=___[9]____
C2.Caption=a
请完善以下判断完数的程序。
一个数如果恰好等于它的因子之和,这个数就被称为“完数”。
一个数的因子是指除了该数本身以外能够被其整除的数。
例如6是一个完数,因为6=1+2+3。
PrivateSubCmdJudge_Click()
If___[13]____Then
Picture1.Printm&
"
是完数"
Picture1.Printm;
="
;
Fori=1ToUBound(a)-1
Picture1.Printa(i);
+"
Picture1.Print___[14]___
不是完数"
Dima()
m=Val(Text1.Text)
ReDima
(1)
a
(1)=1
k=___[10]___
j=1
Fori=2Tom-1
IfmModi=0Then
k=k+i'
因数和
j=j+1'
因数个数
ReDim___[11]___a(j)
a(j)=___[12]____
EndIf
NextI(转右)
编写程序。
在窗体上显示如下图所示的“九九加法表”。
___[15]___Explicit
Dimi%,j%
Print"
+123456789"
Fori=1To___[16]____
Printi;
Forj=1To___[17]____
Ifi+j<
10___[18]__Print"
Print_[19]__;
___[20]____
Nexti
◆在窗体上画一个名称为Command1的命令按钮,然后编写如下程序,通过调用过程Swap,调换数组中数值的存放位置,即a
(1)与a(10)的值互换,a
(2)与a(9)的值互换,……,a(5)与a(6)的值互换。
请填空
OptionBase1
Dima(10)AsInteger
Fori=1To10
a(i)=i
CallSwap(___[21]___)
Printa(i);
SubSwap(b()AsInteger)
n=___[22]___
Fori=1Ton/2
t=b(i)
b(i)=b(n)
b(n)=t
___[23]___
◆设当前文件夹已有文件t1.txt和t2.txt,其中各有若干文字。
现要将t2.txt的内容合并到t1.txt中。
例如t1.txt原来内容为"
ABCD"
t2.txt原来内容为"
1234"
,合并后t1.txt的内容将成为“ABCD1234”
Open"
t1.txt"
____[24]____As#1
t2.txt"
ForInputAs#2
DoWhileNotEOF
(2)
LineInput#2,s
____[25]____
Loop
Close
三、编程题(20分,每题10分)
1.编写一个自定义函数Gcd(m,n),实现求m和n两个正整数的最大公约数。
2.在文本框Text1中输入一串字符,用标签Label1显示其中出现频率最高的字母(不区分大小写)及其出现次数。
例如:
输入“Thisisabeautifulworld.”则输出“使用频率最高的是i,共出现3次。
”
1.计算机中采用二进制,是因为__
(1)____。
(A)可降低硬件成本
(B)两个状态的系统具有稳定性
(C)二进制的运算法则简单
(D)上述三个原因
2.我们通常说的U盘属于计算机部件中的___
(2)___。
(A)输出设备(B)输入设备(C)存储设备(D)打印设备
3.下列表示存储容量的数据中,____(3)____是最小的。
4.一个完整计算机系统应包括___(4)____。
(A)主机和显示器(B)硬件系统和软件系统
(C)系统软件和应用软件(D)内存和外存
5.下列执行速度最快的程序语言是___(5)____。
6.一只白色的足球被踢进球门,则白色、足球、踢、进球门是___(6)___。
(A)属性、对象、方法、事件(B)属性、对象、事件、方法
(C)对象、属性、方法、事件(D)对象、属性、事件、方法
7.以下叙述中正确的是____(7)____。
(A)窗体的Name属性指定窗体的名称,用来标识一个窗体
(B)窗体的Name属性的值是显示在窗体标题栏中的文本
(C)可以在运行期间改变对象的Name属性的值
(D)对象的Name属性值可以为空
8.在VB中,保存一个工程至少应保存两个文件,这两个文件分别是___(8)____。
(A)文本文件和工程文件(B)窗体文件和工程文件
(C)窗体文件和标准模块文件(D)类模块文件和工程文件
9.在下列说法中,正确的是___(9)___
(E)通过适当的设置,可以在程序运行期间,让时钟控件显示在窗体上
(F)在列表框中不能进行多项选择
(D)复选框的Value属性值为布尔型
10.当一个复选框被选中时,它的Value属性的值是___(10)___
(A)3(B)2(C)1(D)0
11.计算结果为0的表达式是___(11)____
(A)Int(2.4)+Int(-2.8)(B)Cint(2.4)+Cint(-2.8)
(C)Fix(2.4)+Int(-2.8)(D)Fix(2.4)+Fix(-2.8)
12.可以惟一标识控件数组中的每一个控件属性的是___(12)____
(A)Name(B)Caption(C)Index(D)Enabled
13.下列变量名中,合法的变量名是___(13)____。
(A)m24(B)mn-k(C)24m(D)m+n
14.若有语句”DimFlagAsBoolean”,则下面赋值语句正确的是___(14)_____。
(A)Flag="
True"
(B)Flag='
True'
(C)Flag=Ture(D)Flag=True
15.下列叙述不正确的是___(15)_____。
(A)InputBox函数返回值为字符型(B)MsgBox函数返回值为所单击按钮的键值
(C)MsgBox语句没有返回值(D)MsgBox语句返回值为所单击按钮的键值
16.若要在Text1的光标(焦点)移动到其它控件时进行合法性判断,则可使用__(16)__事件来实现。
(A)Refresh(B)SetFocus(C)LostFocus(D)GotFocus
17.一般情况下,控件的大小是由___(17)___属性确定的
(A)Width和Height(B)Top和Left(C)Width和Left(D)Top和Width
18.以下能判断是否到达文件尾的函数是__(18)____
(A)BOF(B)LOC(C)LOF(D)EOF
19.下列过程语句说明合法的是____(19)____。
(A)Subf1(ByValn()AsInteger)(B)Subf1(n()AsInteger)AsInteger
(C)Functionf1(f1AsInteger)AsInteger(D)Finctionf1(ByValnAsInteger)
20.要在文本框Text1中显示列表框List1中最后一个项目的正确语句是__(20)____。
(A)Text1.Text=List1.List(ListCount-1)(B)Text1.Text=List1.List(0)
(C)Text1.Text=List1.List(List1.ListCount-1)(D)Text1.Text=List1.ListIndex
21.设组合框Combo1中有5个项目,则以下能删除最后一项的语句是__(21)______。
(A)Combo1.RemoveItemText(B)Combo1.RemoveItem5
(C)Combo1.RemoveItem4(D)Combo1.RemoveItemCombo1.Listcount
22.在通用声明代码中有以下语句:
Dima(4,-3to3)AsString
则该数组有_(22)___个元素。
(A)28(B)24(C)35(D)30
23.要使菜单项能通过按键盘上的Alt键及K键打开,应在菜单编辑器中设置__(23)__。
(A)在“名称”栏中“K”字符前加上“&
”(B)在“标题”栏中“K”字符前加上“&
(C)在“名称”栏中“K”字符后加上“&
”(D)在“标题”栏中“K”字符后加上“&
24.以下Case语句中错误的是__(24)__。
(A)Case0To10(B)CaseIs>
10
(C)CaseIs>
10AndIs<
50(D)Case3,5,Is>
25.假定有以下两个过程,则以下说法中不正确的是__(25)______。
PrivateSubPPP(aAsSingle,bAsSingle)
a=a+b
b=a+b
Printa,b
PrivateSubForm_Activate()
x=18
CallPPP(x,(x))
Printx