人口学院 VB程序设计试卷
题号 得分
一、选择题(每题2分,共60分)
(1) VB是面向( )的程序设计语言。
A. 过程 B。工程 C。事件 D。对象 (2) 能够改变窗体边框线类型的属性是( )
A. FontStyle B.BorderStyle C.BackStyle D.Border
(3)窗体Form1的名称属性为frm,它的Load事件过程名为 ()。
A. From_Load B.Form1_Load C.Frm_Load D.Me_Load
(4)任何控件都具有( )属性
A.Text B.Caption C.Name D.ForeColor
(5)一只白色的玩具狗从窗户扔了出来,掉到地上。则白色、玩具狗、扔、掉地上分别代表( )
A.对象、属性、方法、事件 B。属性、对象、事件、方法 C.属性、对象、方法、事件 D。对象、属性、事件、方法
(6)在过程中定义的变量,如果希望在离开该过程后,还能保存过程中局部变量的值,则应该使用( )关键字在过程中定义局部变量。
A.Dim B.Private C.Public D.Static
(7)如果X是一个正实数,对X的第3位小数四舍五入的表达式是( ) A.0.01*Int(x=0.005) B.0.01*Int(100*(x+0.005)) C. 0.01*Int(100*(x+0.05)) D.0.01*Int(x+0.05)
(8)代数表达式X1-|a|+ln10+sin(X2+2д)/Cos(48°)对应的Visual Basic表达式是( ) A. X1-Abs(A)+Log(10)+sin(X2+2*3.14)/Cos(48*3.14/180) B. X1-Abs(A)+Log(10)+sin(X2+2*д)/Cos(48*3.14/180)
C. X1-Abs(A)+Log(10)+sin(X2+2*3.14)/Cos(48) D. X1-Abs(A)+Log(10)+sin(X2+2*д)/Cos(48)
(9) 若窗体模块中有如下几个事件过程
① command1_click() ②form_load③ form_activate ④form_unload, 一般情况下运行时这几个过程对应的事件发生的先后顺序为() A ②③①④ B ③②①④ C ②①③④ D ②③④①
(10)表达式5^2Mod 25\\2^2的值为( )
A. 1 B。0 C。6 D。4
(11)表达式Int(-17.8)+Sgn(17.8)的值是( ) A.18 B。-17 C。-18 D。16
(12)语句print 1,2,3;:print 1,2,3:print:print “aaa”共打印几行( ) A.3行 B。 4行 C。 5行 D。6行
(13)在一个语句行内写多条语句时,语句之间应该用( )分隔 A.逗号 B。分号 C。顿号 D。冒号
(14)要对顺序文件进行操作,下列打开文件语句中正确的是( )
一 二 三 四 A. Open “file 1.txt” For Output As # 1 B. Open “file 1.txt” For Input As # 1 C. Open “file 1.txt” For Random As # 1 D. Open “file 1.txt” For Binary As #1
(15)想让文本框显示多行内容,但没有实现多行,可能的原因为( )
①multiline属性不为TRUE ②text属性值中无回车换行符 ③文本框对齐属性设
的不对 ④PASSWORDCHAR属性设的不对
A ①② B ①③ C ②④ D ①④
(16)函数 Instr(“VB程序设计教程”,“程序”)的值为( ) A. 1 B。 2 C。3 D。 4
(17)对于表达式a>2 and x<25 or not b ,当 b为FALSE时的结果为( ) A.TURE B.FALSE C. 0 D. 1 (18)设有数组声明语句: Option Base 0
Dim B(-1 To 10,2 To 9,20) As Integer 则数组B中共有( )个元素
A.1800 B。 1848 C。 2016 D。2310
(19)函数Ucase(Mid(“hello world”,7,8))的值为( ) A.hello B.world C.HELLO D.WORLD
(20)若s1=”Visul Basic”,s2=”b” 问下列哪个正确( )
A mid(s1,8,1)>s2
B len(s1)<>2*instr(s1,”1”) C chr(66)& right(s1,4)=”Basic”
D instr(left(s1,6),”a”)+60>asc(ucase(s2)) (21) n=10
for I=n to 1
n=n-1: I=I-1 next I
共循环几次( )
A.5 B. 4 C . 10 D 0 (22) n=10
for I= 1 to n step 2
I=I+1;n=n-1 Next I
共循环几次( )
A.5 B. 4 C . 3 D 0
(23) 下列程序段的运行结果是( )
A=”ABBACDDCBA” For I=6 to 2 step –2 X=mid(A,I,I) Y=left(A,I) Z=Right(A,I) Z=X&Y&Z Next I
Print Z
A.ABA B. AABAAB C . BBABBA D ABBABA
(24)执行以下程序段时依次输入1 .3 .5,执行结果为( ) dim a(4) as interger ,b(4) as interger for k=0 to 2
a(k+1)=val(inputbox(“请输入数据:”)) b(3-k)=a(k+1)
next k print b(k)
A.1 B. 3 C . 35 D 0
(25) Private function abc(x ads interger ) as string If x\\10=0 then
abc=x mod 10
else
abc=cstr(x mod 10 ) & abc (x\\10) end if end function
有调用语句print abc(12345) 则abc共被调用几次( A.6 B. 5 C . 4 D 1 (26) 下列程序段的执行结果为( ) n=0
for I=1 to 3
for j=5 to 1 step –1
n=n+1
next j next I print n;j;I
A.12 0 4 B. 15 0 4
C . 12 3 1 D 15 3 1
(27) for I= 1 to 10
print I
if mod 3=0 then print
next I
结果共几行( )
A.1 B. 2 C . 3 D 4 (28)下列程序的执行结果是( ) x=1 y=1
for I=1 to 3
f=x+y x=y y=f print f;
) next I
A.2 3 6 B. 2 2 2
C . 2 3 4 D 2 3 5 (29) 对于 for I=I to 5 for j=1 to 5
if I<=j then print I*j next j next I
共打印了多少个数( )
A.10 B. 15 C . 20 D 25
(30) 程序段 x=99
select case x case 1 to 10 print “a” case 1 to100 print “b” case 1 to 1000 print “c” end select 执行结果为 ( )
A 为 a B 为 b C 为 c D为二` 填空题 (前5题每题3分,第6题6分,共20)
(1)单击命令按钮时,下列程序的执行结果为________________
private sub command1_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
(2) 单击窗体时,下列程序的执行结果为-_________________ private sub form_click()
dim A as string,B as string,C as string,D as string dim E as string,F as string,G as string H as string A=”HELLOGOODMORNING” B=”WANGCHANGLI” C=left(A,5)+”!”
d E=mid(A,6,4)
F=mid(B,len(B)-6,5)+”!” G=C+””+F Print H +””+G End sub
(3) 单击窗体时,下列程序的执行结果第一行为_________, 第二行为 ____________,第三行为_____________ private sub form_click()
dim M as integer,N as integer ,A(3,3) as integer for M=1 to 3 for N=1 to 3
if N=M or N=3-m+1 then A(M,N)=1 else A(M,N) =0 Next N Next M
For M=1 TO 3 For N=1 to3
Print A(M,,N); Next N Print Next N End sub
(4) 单击窗体时,下列程序的执行结果为_________________
private sub form_click() x=x*2+1 if x<6 then call test(x) end if x=x*2+1 print x;
end sub
(5) 单击窗体时,下列程序的执行结果第一行为( )。第二行为( ) private sub form_click()
dim x as integer, y as integer , z as integer x=1; y=2; z=3 call proc1(x, x, z) call proc1(x, y, y)
end sub
private sub proc1(x as integer ,y as integer ,z as integer)
x=3*z y=2*z z=x+y printx; y; z
end sub
(6) 以下程序实现单击命令按钮生成20个(0,100)之间的随机整数,存于数组中,打印
数组中大于50的数,每行打印5个数,并求这些数的和。 Private sub command1_click()
Dim arr(1 to 20) as integer ,I as integer, x as variant Dim J as integer, sum as integer For I=1 to 20
Arr(I)=( )
Text1.text=text1.text & arr(I) & chr(13) & chr(10) Next I Sum=0
For each x ( ) If x>50 then Print x,
Sum=( ) J=J+1
If ( ) then print End if
Next( ) Print
Print “sum=”; sum End sub
三 编程题(10分*2)
(1) 设计程序,随机产生十个互不相同的两位正整数,并显示出其中最大和最小数。 (2) 设计一个可以判断某正整数是一个回文数的方法。所谓回文数是指左右数字完全对
称的自然数。例如:121 ,12321,484,555等。
因篇幅问题不能全部显示,请点此查看更多更全内容