人人范文网 范文大全

VB程序设计试题及答案(一)

发布时间:2020-03-04 00:12:02 来源:范文大全 收藏本文 下载本文 手机版

VB程序设计试题及答案

(一)

一、单选题

1.VB6.0是一种面向 B 的编程环境。

(A) 机器 (B) 对象

(C) 过程 (D) 应用

2.要使FormI窗体的标题栏显示\"欢迎使用VB\",以下 D 语句是正确的。

(A) Forml.Caption=“欢迎使用VB”

(B) Forml.Caption=\'欢迎使用VB\'

(C) Forml.Caption=欢迎使用VB

(D) Forml.Caption=\"欢迎使用VB\"

3.若要使命令按钮不可操作,要对 A 属性进行设置。

(A) EnabIed (B)Visible

(C) Backcolor (D)Caption

4.如果在窗体上已经创建了一个文本框对象TextI,可以通过 C 事件获得输入键值的ASCII码。

(A) Change (B) LostFocus

(C) KeyPre (D) GotFocus 5.下面 A 是合法的变量名。

(A) X_yz (B) 123ab。 (C) integer (D) X-Y 6.以下关系表达式 中,其值为False的是 A 。

(A) \"ABC\">\"AbC\" (B) \"女\">\"男\"

(C) \"BASIC\"=UCase(\"basic) (D) \"123\"

7.为了给x、y、z三个变量赋初值1,下面正确的赋值语句是 A 。

(A) x=1:y=1:z=1 (B) x=1,y=1,z=

1(C) x=y=z=1 (D) xyz=1

8.VB提供了结构化程序设计的三种基本结构,三种基本结构是 D 。

(A)递归结构、选择结构、循环结构

(B)选择结构、过程结构、顺序结构

(C)过程结构、输入输出结构、转向结构

(D)选择结构、循环结构、顺序结构

9.下面If语句统计满足性别为男、职称为副教授以上、年龄小于40岁条件的人数,不正确的语句是 D 。

(A) If sex=\"男\" And age=4O And InStr(duty,\"教授\")>O Then n=n+l

(B) If sex=\"男\" And age=4O And (duty=\"教授\" Or duty=\"副教授\") Then n=n+l

(C) If sex=\"男\" And age=4O And Right(duty,2)=\"教授\" Then n=n+l

(D) If sex=\"男\" And age=4O And duty=\"教授\" And duty=\"副教授\" Then n=n+l

10.下列关于Do…Loop循环结构执行循环次数的描述正确的是 D 。 (A) Do While…Loop循环和Do…Loop Until循环至少都执行一次 (B) Do While…Loop循环和Do…Loop Until循环可能都不执行

(C) Do While…Loop循环至少执行一次和Do…Loop Until循环可能不执行

(D) Do While…Loop循环可能不执行和Do…Loop Until循环至少执行一次

11.以下 B 是正确的For…Next结构。

(A) For x=1 To Step 10 (B) For x=3 To -3 Step -3

Next x Next x (C) For x=1 To 10 (D) For x=3 to 10 step

3 re: … …

Next x Next y

If i=10 Then GoTO re

12.如下数组声明语句, B 是正确的。

(A) Dim a[3,4] As Integer

(B) Dim a(3,4) As Integer

(C) Dim a(n,n) As Integer

(D) Dim a(3 4) As Integer

13.下列语句中(假定变量n有值),能正确声明可变长数组的是 A 。

(A) Dim a( ) As Integer (B) Dim a( ) As Integer

ReDim a(n) ReDim a(n) As String

(C) Dim a( ) As Integer (D) Dim a(10) As Integer ReDim a(3, 4) ReDim a(n+10)

ReDim Preserve a(4, 4)

14.要想从子过程调用后返回两个结果,下面子过程语句说明合法的是

C 。

(A) Sub f2(ByVal n%, ByVal m%) (B) Sub f1(n%, ByVal m%)

(C) Sub f1(n%, m%) (D) Sub f1(ByVal n%, m%)

15.设有如下程序段:

Public Sub F1(n%)

n=3*n+

4 …

End Sub

Private Sub Command1_Click( )

Dim n%, m%

n=3

m=4

‘调用F1语句

End Sub

则在Command1_Click事件中有效的调用语句是 B 。

1 (A) Call F1(n+m) (B) Call F1(m) (C) Call F1(5) (D) Call F1(m+5)

16.用来设置粗体字的属性是 C 。

(A) FontItalic (B) FontName (C) FontBold (D) FontSize

17.假定定时器的Interval属性为1000,Enabled属性为True,调用下面的事件过程,程序运行结束后变量x的值为 D 。

Dim x As Integer

Sub Timer1_Timer( )

For i=1 to 10

x=x+

1 Next i

End Sub

(A) 1000 (B) 10000 (C) 10 (D) 以上都不对

18.在下列关于通用对话框的叙述中,错误的是 B 。

(A) CommonDialog1.ShowFont显示“字体”对话框

(B) 在“打开”或“另存为”对话框中,用户选择的文件名可以经FileTitle属性返回

(C) 在“打开”或“另存为”对话框中,用户选择的文件名机器路径可以经FileName属性返回

(D)

19.当用户按下并且释放一个键后会触发KeyPre、KeyUp和KeyDown事件,这三个事件发生的顺序是 C 。

(A) KeyPre、KeyDown、KeyUp (B) KeyDown、KeyUp、KeyPre (C) KeyDown、KeyPre、KeyUp

(D) 没有规律

20.在下面关于顺序文件的描述中,正确的是 C 。 (A) 顺序文件中每行的长度都是相同的。 (B) 可以通过编程对文件中的某行方便地进行修改

(C) 数据以ASCII码的形式存放在文件中,所以可通过记事本打开 (D) 文件的组织结构复杂 21.随机文件是因为 C 。

(A) 文件中的内容是通过随机数产生的 (B) 文件中的记录号通过随机数产生的 (C) 可对文件中的记录根据记录号随机地读/写 (D) 文件的每条记录的长度是随机的

22.从磁盘上读入一个文件名为“c:\\t1.txt”顺序文件,如下 A 正确。

(A) F=“c:\\t1.txt”

Open F For Input As #1 (B) F=“c:\\t1.txt”

Open “F” For Input As #2 (C) Open “c:\\t1.txt” For Input As #1

(D) Open c:\\t1.txt For Input As #2

23.坐标度量单位可由通过来 D 改变。

(A)Drawstyle属性 (B) DrawWidth属性

(C) Scale方法 (D) ScaleMode属性

24.指令“Circle (1000, 1000), 500, 8, -6, -3”将绘制 A 。 (A) 画圆 (B) 椭圆 (C) 圆弧 (D) 扇形 25.用ADO数据控件建立与数据源的链接,设置操作过程按 A 顺序进行。

①选择数据源连接方式;②选择数据库类型;③指定数据库文件名;④指定记录源

(A) ① ② ③ ④ (B) ② ③ ④ ①

(C) ③ ① ② ④ (D) ① ③ ② ④

二、填空题

1.VB是建立在BASIC语言基础上的

可见 化编程语言或编程环境。

2.在窗体上已建立多个控件如Text

1、Label

1、Command1,若要程序一运行时焦点就定位在Command1控件上,应对Command1控件设置 TabIndex 属性的值为 0 。

3.在VB中,12

34、123456&、1.2346E+

5、1.2346D+5这4个常数分别表示 整形、长整形、单精度、双精度 类型。 4.表示x是5的倍数或是9的倍数的逻辑表达式为 x mod 5 = 0 or x mod 9=0 。

5.数组声明时下标下界默认为0,利用 Opation Base 1 语句可以使下标为1。

6.传地址方式是当过程被调用时,形参和实参共享 存储单元 。 7.窗体中的模块级变量应在 窗口模块 段声明,它作用于该窗体的

全局范围 。

8.当用户单击滚动条的空白处时,滑块移动的增量值由 LargeChange 属性决定。

9.如果菜单标题的某个字母前输入一个“&”符号,那么该字母就成了热键字母;如果建立菜单时在标题文本框中输入一个“1)

x(0) = 1

x(1) = 1

For i = 2 To n1) + x(i1

Print x(i),

If (i + 1) Mod 5 = 0 Then Print

Next End Sub

输出结果:

1 1 2 3 8 13 21 34 (2) Public Function f(m%, n%)

Do While mn

Do While m> n: m=m-n: Loop

Do While m

Loop

f=m

End Function

Print f(24, 18)

End Sub 输出结果:6 (3)

Public x as Integer

Private Sub Fomr_Click( )

Dim x as Integer

x=10

print "x=";x

End Sub 输出结果: x=10 2.补充程序

(1)以下是冒泡法排序的程序,要求将数组里的数按升序排列,将其补充完整。

Private Sub Command1_Click()

Dim a(), iMin%, n%, i%, j%, t%

a = Array(8, 6, 9, 3, 2, 7)

n = ubound(a) \' 获得数组的下标上界

For i = 0 To n - 1

For j = 0 To n-i-1

If a(j)>a(i) Then

t = a(j): a(j) = a(j + 1): a(j + 1) = t

End If

Next j

Next i

For i = 0 To n Print a(i); Next i End Sub

(2) 用递归的方法求n! Private Sub Command1_Click() Print \"fac(4)=\"; fac(4) End Sub

Public Function fac As Integer If n = 1 Then

fac = 1 Else

Fac=fac*n End If End Function

VB程序设计试题及答案

(三)

一、单选题

5 1.Visual Basic是一种面向对象的可视化程序设计语言,采取了 A 的编程机制。

(A) 事件驱动 (B) 按过程顺序执行 (C) 从主程序开始执行 (D) 按模块顺序执行

2.若要使标签控件显示时不覆盖其背景内容,要对 D 属性进行设置。

n=n*j n=n*j

Next j Next j

Print n Print n Next I Next i (C) n=1 (D) n=1 (A) Backcolor (B) BorderStyle (C) Forecolor (D) Backstyle 3.在Visual Basic中最基本的对象是 C ,它是应用程序的基石,是其他控件的容器。

(A) 文本框 (B) 命令按钮 (C) 窗体

(D) 标签

4.要判断在文本框是否按下Enter键,应在文本框的 D 事件中判断。 (A) Change (B)KeyDown (C) Click (D)KeyPre 5.数学表达式3≤x

(A) 310 (C) x>=3 Or x=3 AND x

(A) 0 (B) 1 (C) 0.1234 (D) 0.0005 7.赋值语句:a=123+Mid(\"123456\",3,2)执行后,a变量中的值是 D 。

(A) \"12334\" (B) 123 (C) 12334 (D) 157 8.对于语句If x=l Then y=l,下列说法正确的是 C 。

(A) x=l和y=l均为赋值语句

(B) x=l和y=l均为关系表达式

(C) x=l为关系表达式,y=l为赋值语句

(D) x=l为赋值语句,y=l为关系表达式

9.下面程序段表示求两个数中的大数, D 不正确。

(A) Max=IIf(x>y,x,y) (B) If x>y Then Max=x Else Max=y (C) Max=x (D) Ify>=x Then Max=y If y>=x Then Max=y Max=x 10.当在文本框中输入“ABCD”4个字符时,窗体上显示的是 C 。

Private Sub Text1_Change( ) Print Text1; End Sub (A) ABCD (B) A (C) AABABCABCD (D) A

B AB

C ABC

D ABCD 11.下列哪个程序段不能分别正确显示1!、2!、3!、4!的值 B 。 (A) For i=1 to 4 (B) For i=1 to 4

n=1 For j=1 to i

For j=1 to I n=1

For j=1 to4 j=1

n=n*j Do While j

Print n n=n*j Next j Print n j=j+1

Loop

12.如下数组声明语句,则数组a包含元素的个数有 A 。

Dim a(3, -2 to 2, 5)

(A) 120 (B) 75 (C) 60 (D) 13 13.以下程序的输出结果是 D 。

Dim a

a=Array(1, 2, 3, 4, 5, 6, 7) For i=Lbound(a) to Ubound(a)

a(i)=a(i)*a(i) Next i Print a(i)

(A) 49 (B) 0 (C) 不确定 (D) 程序出错

14.在过程中定义的变量,若希望离开该过程后,还能保存过程中局部变量的值,则应使用关键字 D 在过程中定义局部变量。

(A) Dim (B) Private (C) Public (D) Static 15.如下程序,运行的结果是 B 。

Dim a%, b%, c%

Public Sub p1(x%, y%)

Dim c%

x=2*x: y=y+2: c=x+y End Sub

Public Sub p2(x%, ByVal y%)

Dim c%

x=2*x: y=y+2: c=x+y End Sub

Private Sub Command1_Click( )

a=2: b=4: c=6

Call p1(a, b)

Print “a=”; a; “b=”; b; “c=”; c

Call p2(a, b)

Print “a=”; a; “b=”; b; “c=”; c

End Sub

(A) a=2 b=4 c=6 (B) a=4 b=6 c=10 a=4 b=6 c=10 a=8 b=8 c=16 (C) a=4 b=6 c=6 (D) a=4 b=6 c=14 a=8 b=6 c=6 a=8 b=8 c=6 16.复选框的Value属性为1时,表示 B 。

(A) 复选框未被选中 (B) 复选框被选中

(C) 复选框内有灰色的勾 (D) 复选框操作有误

17.下面关于菜单的说法中,错误的是 B 。

(A)每个菜单项都是一个控件与其他控件一样也有自己的属性和事件

(B) 除了Click事件之外,菜单项还能响应其他的,如DbClick事件

(C) 菜单项的快捷键不能任意设置

(D) 在程序执行时,如果菜单项的Enabled属性为False,则该菜单项变成灰色,不能被用户选择

18.下面关于多重窗体的叙述中,正确的是 B 。 (A) 作为启动对象的Main子过程中能放在窗体模块中 (B) 如果启动对象是Main子过程,则程序启动时不加载任何窗体,以后由该过程根据不同情况决定是否加载或加载哪一个窗体

(C) 没有启动窗体,程序不能执行 (D) 以上都不对

19.当用户将焦点移到另一个应用程序时,当前应用程序的活动窗体将 D 。 (A) 发生DeActivate事件 (B) 发生LostFocus事件

(C) 发生DeActivate和LostFocus事件 (D) DeActivate和LostFocus事件都不发生 20.顺序文件是因为 D 。

(A) 文件中的数据按每行的长度从小到大排序好的 (B) 文件中的数据按某个关键数据项从大到小进行排序 (C) 文件中的数据按某个关键数据项从小到大进行排序 (D) 数据按进入的先后顺序存放的,读出也是按原写入的先后顺序读出

21.文件号最大可取值为 B 。

(A) 255 (B) 511 (C) 512 (D) 256 22.Print #1, STR$1中的Print是 A 。

(A) 文件的写语句 (B) 在窗体上显示的方法

(C) 子程序名 (D) 以上均不是

23.以下的属性和方法中 C 可重定义坐标系。 (A)Drawstyle属性 (B) DrawWidth属性

(C) Scale方法 (D) ScaleMode属性 24.封闭图形的填充方式由下列 C 属性决定。 (A) DrawStyle, DrawMode (B) AutoRedraw, ClipControls

(C) FillStyle, FillColor (D) ForeColor, BorderColor 25.下列字符串中, D 不包含在ADO数据控件的ConnectionString属性中。 (A) Microsoft Jet 4.0 OLE DB Provider (B) Data Source=C:\\Mydb.mdb (C) Persist Security Info=False (D) 2-adCmdTable

二、填空题

1.在代码窗口对窗体的BorderStyle、MaxButton属性进行了设置,但运行后没有效果,原因是这些属性 在运行时设计是无效的 。

2.在文本框中,通过 SelStart 属性能活得当前插入点所在的位置。

3.表达式Ucase(Mid(“abcdefgh”, 3, 4))的值是 CDEF 。 4.已知a=3.5,b=5.0,c=2.5,d=True,则表达式:a>=0 And a+c>b+3 Or Not d的值是 False 。

5.要获得动态数组的上界通过 UBound 函数,下界通过 LBound 函数。

6.由Array函数建立的数组,其变量类型必须是 variant 类型。

7.VB中的变量按其作用域分为全局变量、模块变量和 局部变量 变量。

8.复选框的 Value 属性设置为2——Grayed时,变成灰色,禁止用户选择。

9.滚动条响应的重要事件有 Scroll 和Change。 10.假定有一个通用对话框控件CommonDialog1,除了用COmmonDialog1.Action=3显示颜色对话框之外,还可以用 showcolor 方法显示。

11.窗体Form1的左上角坐标为(-200, 250),窗体Form1的右下角的坐标为(300, -150),则X轴的正向向 右 ,Y轴的正向向 上 。

12.使用Circle方法画扇形,起始角、终止角取值范围为 0~2π 。

13.在运行状态改变ADO数据控件的数据源连接属性后,必须使用 Refresh 方法激活这些变化。 14.VB中工程文件的扩展名为 vbg 。

15.如果在窗体上已经创建了一个文本框对象Text1,可以通过 Keypre 事件获得输入键值的ASCII码。

7 16.VB中对象的三要素是 属性、事件 和 方法 。

三、编程应用题 1.程序阅读

(1) Private Sub Command1_Click( )

Dim s as String, i%

s="abcd"

For i=Len(s) to 1 step -1 Print Mid(s, i, 1) Next i End Sub 输出结果:

d c b a (2) Sub Swap1(ByVal x%, ByVal y%) Dim t% t = x: x = y: y = t End Sub Sub Swap2(ByRef x%, ByRef y%) Dim t% t = x: x = y: y = t End Sub Sub Command1_Click()

Dim a%, b% a = 10: b = 20 Print \"调用Swap1前 a和b的值为:\"; a; b Call Swap1(a, b) Print \"调用Swap1后按传值方式 a和b的值为:\"; a; b a = 10: b = 20 Call Swap2(a, b) Print \"调用Swap2后按传地址方式 a和b的值为:\"; a; b End Sub 输出结果

调用Swap1前 a和b的值为:10 20 调用Swap1后按传值方式 a和b的值为:10 20 调用Swap2后按传地址方式 a和b的值为: 20 10 (3) Private Sub Command1_Click( )

Dim x%, y%, z%

x=242: y=44

z=x*y

Do Until x=y

If x>y Then x=x-y Else y=y-x

Loop

Print x, z/x End Sub

输出结果: 22 484 2.补充程序

(1) 以下是求1~18之间某个数的阶乘的程序,具体的数值n由滚动条HScroll1获得,结果显示在窗体下部的两个Label标签里。补充完整如下程序。

Private Sub HScroll1_Change() Dim i As Integer, s As Double s = 1

n = Hscroll1.Value If n 0 Then For i = 1 To n s = s*i Next i End If

Label2.Caption = n & \"! = \" Label3.Caption = s End Sub

(2)以下程序的功能是:已知数组a,删除数组中某个元素。

Private Sub Command1_Click( )

Dim a( ), key%, i%, j%

a=Array(1, 6, 8, 3, 5, 9, 10, 2, 4, 7)

key=9

For i=0 to UBound(a) If a(i)=9 Then

For j=i+1 to UBound(a) a(j)=a(j+1)

Next j

ReDim a(j)=a(i)

MsgBox("删除完成")

Exit Sub End If

Next i

MsgBox("找不到要删除的元素") End Sub

读程序并填空

8 1.给定程序的功能是输出一组数的最大值和最小值,在画线处填入适当内容,将程序补充完整。

Private Sub

End Function

4.给定程序的功能是建立并输出除主、副对角线上的元素为5外,其余元素都为1的方阵,在画线处填入适当内容,将程序补充完整。 Command1_Click( )

X=Array( -112, 18, 20, -5, -100, 82, 91, 56, 78, 99, Private Sub Command1_Click( ) 100)

Max=x( 0 )

Min=x( 0 )

For I=1 To 10

If x( I )>Max Then

_____________

End if

If x( I )>Min Then

_____________

End if

Next I

Print “MAX=” ; Max , “MIN=” ; Min

End Sub 2.若A2+B2+C2 , 则A,B,C称为一组勾股数,如下程序是找出100以内的所有勾股数,并按A,B,C顺序输出。请在画线处填入适当内容。

Private Sub Command1_Click( )

For A=2 To 99

For B=A+1 To 100

C=_____________

If ____________ And C

Print A, B, C

End If

Next B Next A End Sub 3.本程序的功能是计算输入数的阶乘,请在画线处填上适当的内容使程序完整。

Private Sub form_Click( )

Do

N=Val(InputBox(“请输入一个大于0的整数:”))

Loop Until N>0

Print Fact( N)

End Sub

Private Function Fact( M )

Fact= _______________(1分)

For I=2 To ____________(2分)

Fact = ______________(2分)

Next I

Dim A( 10,10 )

For I=1 To 10

For J=_______________(2分)

If __ _____________ Then A( I, J )=5 Else A( I, J)=1 (1分) Next J Next I For I=1 To 10

For J=1 To 10

Print A( I, J ); Next J

__ __________

(2分) Next I

End Sub

编写一个程序,在程序运行时输入一个0—99999之间的整数,判断输入的是几位数,并在窗体输出结果。

编写一个程序,在窗体上添加两个命令按钮,运行程序时,单击[开始]按钮,在窗体输出1~100之间所有能被3整除的数。单击[结束]按钮,结束程序。

VB程序设计试题与答案

VB程序设计期末模拟试题及答案

VB程序设计期末模拟试题及答案

《vb程序设计》期末复习题及答案

VB试题及答案

vb试题及答案

算法与程序设计VB试题与答案10

算法与程序设计VB试题与答案08

VB程序设计练习题附加答案

可视化程序设计(VB)模拟试题

VB程序设计试题及答案(一)
《VB程序设计试题及答案(一).doc》
将本文的Word文档下载到电脑,方便编辑。
推荐度:
点击下载文档
点击下载本文文档