VB题库综合.docx
《VB题库综合.docx》由会员分享,可在线阅读,更多相关《VB题库综合.docx(119页珍藏版)》请在冰点文库上搜索。
![VB题库综合.docx](https://file1.bingdoc.com/fileroot1/2023-8/13/89577243-eda6-43b6-8754-be18ddf923a1/89577243-eda6-43b6-8754-be18ddf923a11.gif)
VB题库综合
1.执行a=2:
b=3:
c=a>b以后,c的值为false。
(t)
1、运算符mod与\的功能是一样的。
(f)
2、日期类型与逻辑类型不能运算。
(f)
4、在VB中,s=iif(x>=0,1,-1}与ifx>=0thens=1elses=-1是完全等效的语句。
( t )
5、对象属性只能在属性窗口设置。
(f)
6、组合框(ComboBox)是列表框和文本框的组合。
( t )
7、时钟控件只支持Timer事件。
( t )
8、组合框包含了列表框的功能。
( t )
9、在控件数组中,每一个控件都共享同一个事件过程。
( t )
10、控件数组共用事件和方法,区分控件元素需要引用控件的Index属性。
( t )
11、在控件数组中,控件的类型可以不同,但控件的名字必须相同。
( f )
12、数组是一组具有同一名字、不同下标的下标变量。
( t )
13、模块(module)是相对独立的程序单元。
( t )
14、KeyDown事件、KeyUp事件不与KeyPress事件同时激发。
( f )
15、文本框能返回按键的ASCII码值的事件是keypress。
( t )
16、在命令按钮释放鼠标按钮时,所触发的事件称为mouseup事件。
( t )
17、VisualBasic是一种面向对象的可视化程序语言,采用了事件驱动的编程机制。
( t )
18、在VB集成开发环境中,运行VB程序的方法有两种是:
解释执行,编译执行。
( t )
19、在VB中,设置或修改一个对象的属性的方法有两种,它们分别是属性窗口修改,命令修改或语句修改。
( t )
20、在VB中,定义全局变量的关键字为Public,定义局部变量通常使用Dim,Private,其中定义静态变量的关键字为Static。
( t )
13·在For<控制变量>=<初值>To<终值>[Step<步长>]结构中,循环次数为Int((终值-初值)/步长+1)。
(T)
14·设置属性的语句格式为:
“对象名.属性名=属性值”。
(T)
15·VisualBasic是一种面向对象的可视化程序语言,采用了事件驱动的编程机制。
(T)
26、模块(module)是相对独立的程序单元。
(T)
30、在VB中,定义全局变量的关键字为public,定义局部变量通常使用dim,private,其中定义静态变量的关键字为static。
(T)
1.字符串可以比较运算,但是汉字无法进行比较。
(T)
2.日期类型与逻辑类型不能运算。
(F)
在VB中,s=iif(x>=0,1,-1}与ifx>=0thens=1elses=-1是完全等效的语句。
( T )
11.控件数组共用事件和方法,区分控件元素需要引用控件的Index属性。
( T )
12.在控件数组中,控件的类型可以不同,但控件的名字必须相同。
( F )
15.随机文件一打开,就既可读出数据也可写入数据。
( T)
1、下列程序段的执行结果为234。
Num=1
DoWhilenum<=3
Num=num+1
Printnum;
Loop
2、下列程序段的执行结果为80。
a=0
Fork=1to20step2
Ifkmod5<>0thena=a+k
Nextk
Printa
3、下列程序段的执行结果为9。
a=5
Fork=2.6to4.9step0.6
a=a+1
Nextk
Printa
4、下列程序段的执行结果为78。
a=0:
k=0
DoWhilek<50
k=k+2
k=k*k+k
a=a+k
Loop
Printa
5、在窗体中添加一个命令按钮,然后编写如下代码:
PrivateSubCommand1_Click()
a=InputBox("请输入一个整数",””,21)
b=InputBox("请输入一个整数",””,45)
Printa+b
EndSub
程序运行后,单击命令按钮,在输入对话框中分别输入21和45,输出结果为2145。
6、以下程序的运行结果为9。
PrivateSubCommand1_Click()
Dima(5)
Forj=0To5Step1
a(j)=j
Nextj
Printa
(1)+a(3)+a(5)
EndSub
7、以下程序的运行结果为41。
PrivateSubCommand1_Click()
Dima
ReDima(6)
Forj=1To5
a(j)=j*j
Nextj
Printa(a
(2)*a(3)-a(4)*2)+a(5)
EndSub
6、以下程序的运行结果为42。
PrivateSubCommand1_Click()
Dima(10,10)
Fori=2To4
Forj=4to5
a(i,j)=i*j
Next
NextI
Printa(2,5)+a(3,4)+a(4,5)
EndSub
7、以下程序的运行结果为7。
PrivateSubForm_Click()
a=Array(1,5,8,4,7,9,3)
n=0
ForEachxIna
n=n+1
Nextx
Printn
EndSub
8、以下程序的运行结果为10。
PrivateSubForm_Click()
Dima
DimiAsInteger
a=Array(1,2,3,4,5,6,7,8,9)
Fori=0To3
s=s+a(i)
Nexti
Prints
EndSub
9、以下程序的运行结果为1。
OptionBase1
PrivateSubForm_Click()
Dima
DimiAsInteger
DimminAsInteger
a=Array(1,3,9,4,7,6,2,8,5)
min=a
(1)
Fori=2To9
Ifa(i)Nexti
Printmin
EndSub
10、以下程序的运行结果为a,b,c=152749。
PrivateSubCommand1_Click()
Dima%,b%,C%
a=3:
b=5:
c=7
a=a+b+c
b=a+b+c
c=a+b+c
print“a,b,c=”;a;b;c
EndSub
11、以下程序的运行结果为a=5b=3。
PrivateSubCommand1_Click()
Dima%,b%
a=3:
b=5
a=a+b
b=a-b
a=a-b
print“a=”;a,“b=”b
EndSub
12、以下程序段执行的结果是107。
Privatesubcommand1_click()
Dimx%,y%
X=10:
y=5
Callf1(x,y)
Printx,y
Endsub
----------
Subf1(byvalx1asinteger,y1asinteger)
X1=x1+2
Y1=y1+2
Endsub
13、以下程序段执行的结果是15。
PrivateFunctionFunc(ByValaAsInteger,ByValbAsInteger)
Func=a+b
EndFunction
---------
PrivateSubCommand1_Click()
Dimx%,y%,z%,r%
x=2:
y=5:
z=8
r=Func(Func(x,y),z)
Printr
EndSub
当在Command1按扭上单击,该程序的输出结果是。
14、窗体上有一空文本框Text1,执行以下程序后在文本框中输入abc123,单击按钮后运行结果是ABC123。
PrivateSubCommand1_Click()
PrintText1.Text
EndSub
-----------
PrivateSubText1_KeyPress(KeyAsciiAsInteger)
Char=Chr(KeyAscii)
KeyAscii=Asc(UCase(Char))
EndSub
15、执行下列程序后,在文本框Text1中输入“d”,运行结果为D。
PrivateSubText1_KeyDown(KeyCodeAsInteger,ShiftAsInteger)
PrintChr(KeyCode)
EndSub
1、有过程swap,其功能为交换一维数组,即第一个与最后一个元素交换,第二个与倒数第二个元素交换,……请填空。
Subswap(a()asinteger)
M=Lbound(a)
N=Ubound(a)
J=0
Fork=Mto(N-M+1)/2
T=a(k)
a(k)=a(N-J)
a(N-J)=T
J=J+1
Next
Endsub
2、有过程swap,其功能为交换一维数组,即第一个与最后一个元素交换,第二个与倒数第二个元素交换,……请填空。
Subswap(a()asinteger)
M=Lbound(a)
N=Ubound(a)
J=0
Fork=Mto(N-M+1)/2
T=a(k)
a(k)=a(N-J)
a(N-J)=T
J=J+1
Next
Endsub
3、有过程swap,其功能为交换一维数组,即第一个与最后一个元素交换,第二个与倒数第二个元素交换,……请填空。
Subswap(a()asinteger)
M=Lbound(a)
N=Ubound(a)
J=0
Fork=Mto(N-M+1)/2
T=a(k)
a(k)=a(N-J)
a(N-J)=T
J=J+1
Next
Endsub
4、有过程sort,用选择法实现一维数组从小到大排序。
Subsort(a()asinteger)
M=Lbound(a)
N=Dbound(a)
Fori=MtoN-1
Forj=i+1toN
Ifa(i)>a(j)then
T=a(i):
a(i)=a(j):
a(j)=T
Endif
Nextj
Nexti
5、输入二个正整数M、N,用辗转相除法求它们的最大公约数P。
Subcommand1_click()
DimM%,N%
M=val(inputbox(“M=”))
N=val(inputbox(“N=”))
Do
P=mmodn
M=N
N=P
LoopWhileP<>0
P=M
PrintP
Endsub
9、输入一个正整数N,判断它是否是素数。
Subcommand1_click()
DimN%
N=val(inputbox(“N=”))
Fork=2tosqr(N)
IfNmodk=0then
ExitFor
Endif
Next
Ifk>sqr(n)then
PrintN;”是素数”
Else
PrintN;”不是素数”
Endif
Endsub
10、下面程序的作用是利用随机函数产生10个100∽200之间(包含100、200)的随机数,打印其中为5的倍数的数,并求出它们的总和。
请将下列程序补充完整。
PrivateSubCommand1_Click()
dimx%,k1%,m%
k1=0
Form=1To10
x=Int(Rnd*__101+100________)
Ifxmod5=0Then
Printx;
k1=k1+x
EndIf
Nextm
Print"k1=";k1
EndSub
13、产生10个介于0到100之间的随机整数,求数组中的最大数并在窗体上输出。
PrivateSubCommand1_Click()
Dima(1To10)AsInteger
DimmaxAsInteger
ForI=1To10
a(I)=Int(Rnd*101)
NextI
max=a
(1)
ForI=2To10
Ifa(I)>maxThenmax=a(I)
NextI
Printmax
EndSub
15、利用数组输出Fibonacci数列(11235813…)的前10项,该数列的第1项和第2项均为1,其余各项均为其前两项之和,并在窗体中全部输出,把下列程序补充完整。
PrivateSubCommand1_Click()
Dima(1To10)AsInteger
a
(1)=1
a
(2)=1
Fori=3To10
___a(i)=a(i-1)+a(i-2)
Nexti
Fork=1To10
Printa(k);
Nextk
EndSub
三、填空
16·
neg=neg+Arr(k)
neg=Arr(k)+neg
17·输入二个正整数N、N,用辗转相除法求它们的最大公约数P。
Subcommand1_click()
DimM%,N%
M=val(inputbox(“M=”))
N=val(inputbox(“N=”))
Do
P=MmodN
M=N
N=P
LoopWhileP<>0
P=M
PrintP
Endsub
18·以下程序的运行结果为7。
19·如下程序运行后,单击命令按钮,如果在输入对话框中输入字符串"abcde",单击"确定"按钮后在窗体上的输出结果为(EDCBA)。
31、下列程序段的执行结果为____12_____。
a=0
Fork=1To20Step5
IfkMod2<>0Thena=a+k
Next
Printa
32、下列程序段的执行结果为_____3____。
a=Array(1,1,1,1,1)
Fori=0ToUBound(a)
a(i)=a(i)+i-1
Nexti
Printa(3)
33、以下程序段执行的结果是_________。
2!
=2
privatesubform_click()2!
=2
Dimm%,n%,cmn%4!
=24
m=Val(InputBox("请输入数据m=?
","输入框",4))c(4,2)=6
n=Val(InputBox("请输入数据n=?
","输入框",2))
cmn=f(m)/f(n)/f(m-n)
Print"c(";m;",";n;")=";cmn
EndSub
-----------------------------
PublicFunctionf(ByValp%)AsInteger
Dimk%,t%
t=1
Fork=1Top
t=t*k
Nextk
Printp;"!
=";t
f=t
EndFunction
34、下列语句中,循环体中m=m+n\3的执行次数是____3_____。
Forn=1To10
IfnMod3=0Thenm=m+n\3
Nextn
35、下列语句中,循环变量n的取值分别为___46______。
p=1
Forn=3to7Step1
Ifnmod2=0then
Print“*”;n;
p=p*n
endif
Nextn
注意:
答案不要换行,每个取值之间用空格隔开。
31、下列程序段的执行结果为____12_____。
a=0
Fork=1To20Step5
IfkMod2<>0Thena=a+k
Next
Printa
32、下列程序段的执行结果为_____3____。
a=Array(1,1,1,1,1)
Fori=0ToUBound(a)
a(i)=a(i)+i-1
Nexti
Printa(3)
33、以下程序段执行的结果是___6______。
privatesubform_click()
Dimm%,n%,cmn%
m=Val(InputBox("请输入数据m=?
","输入框",4))
n=Val(InputBox("请输入数据n=?
","输入框",2))
cmn=f(m)/f(n)/f(m-n)
Print"c(";m;",";n;")=";cmn
EndSub
-----------------------------
PublicFunctionf(ByValp%)AsInteger
Dimk%,t%
t=1
Fork=1Top
t=t*k
Nextk
Printp;"!
=";t
f=t
EndFunction
34、下列语句中,循环体中m=m+n\3的执行次数是____3_____。
Forn=1To10
IfnMod3=0Thenm=m+n\3
Nextn
35、下列语句中,循环变量n的取值分别为___46______。
p=1
Forn=3to7Step1
Ifnmod2=0then
Print“*”;n;
p=p*n
endif
Nextn
注意:
答案不要换行,每个取值之间用空格隔开。
1.编程,输入x值,按下式计算并输出y值。
2.从键盘上输入二个正整数m、n,求它们的最大公约数cd和最小公倍数cm
提示:
1)对输入的数字要求过滤:
若输入为非正整数,或是其它符号,信息框提示“数据错误!
”,
并能立即清除文本框内容。
2)使用do循环结构编写程序。
3.编程计算:
求
的近似值,直到最后一项的绝对值小于10-4为止。
4.打印杨辉三角形(前9行),用数组存储各行数字。
5.如图示窗体:
输入三角形的三边长数据,若这组数据能构成三角形,计算出三角形的面积,不能构成三角形,弹出信息框“不能构成三角形”,
[重试]:
重新输入数据,[取消]结束程序。
6.打印输出100-300之间所有的素数。
7.从键盘输入10个数,并使用冒泡法对其进行排序(从小到大)。
其它阅读题
5.Privatesubform-click()
Dimk1,k2,sum,try,tem,red,yu
k1=2005
try=k1Mod10:
k1=k1\10
tem=k1Mod10:
k1=k1\10
red=k1Mod10:
k1=k1\10
yu=k1Mod10
sum=yu+red+tem+try
k2=try*1000+tem*100+red*10+yu
Print"k1=";k1,"k2=";k2
Print"sum=";sum
Endsub
本程序输出结果是:
____7_____
6.PrivateSubform_click()
Dimsum%,p%,m%,i%,K%
m=3:
sum=0
Print"sum=";
Fori=1Tom
Print"+";i;"!
";
ForK=1Tom
p=p*K
NextK
sum=sum+p
Nexti
Print"=";sum
EndSub
本程序输出结果是:
sum=+1!
+2!
+3!
=0
_________
7.PrivateSubform_click()
Dima%,b%,c%
a=5:
b=9:
c=12
a=a+b
c=c-b
ifa-c>b-cthena=b+c
ifa-b>b-cthenb=a-c
printa,b,c
EndSub1293
8.下面程序的运行结果是:
______letter=4____number=2_____other=4_________
PrivateSubForm_Click()
Privatesubform_click()
Dimstr1$,letter%,number%,other%,n%
Letter=0:
number=0:
other=0
Str1=inputbox$(“输入字符串=”,”输入框”,”ab3+c,d_5$”)
Forn=1tolen(str1)
Selectcasemid$(str1,n,1)
Case“a”to“z”
Letter=letter+1
Case1to9
Number=number+1
Caseelse
Other=other+1
Endselect
Nextn
Print“letter=”;letter,”number=”;number