VB程序设计复习模拟试题一及答案

阅读: 评论:0

2024年2月4日发(作者:)

VB程序设计复习模拟试题一及答案

VB程序设计复习模拟试题一及答案

一、选择题

(1)执行语句 Dim X,Y As Integer 后,( )

A)X和Y均被定义为整型变量 B)X和Y均被定义为变体类型变量

C)X被定义为整型变量,Y被定义为变体变量 D)X被定义为变体类型变量,Y被定义为整型变量

(2)以下关系表达式中,其值为True的是

A)"XYZ">"XYz" B)"VisualBasic"<>"visualbasic"

C)"the"="there" D)"Integer"<"Int"

(3)执行以下程序段

a$="Visual Basic Programming"

b$="C++"

C$=UCase(Left$(a$,7)) & b$ & Right$(a$,12)后,变量C$的值为

A)Visual BASIC Programming B)VISUAL C++ Programming

C)Visual C++ Programming D)VISUAL BASIC Programming

(4)下列叙述中正确的是

A)MsgBox语句的返回值是一个整数

B)执行MsgBox语句并出现信息框后,不用关闭信息框即可执行其他操作

C)MsgBox语句的第一个参数不能省略

D)如果省略MsgBox语句的第三个参数(Title),则信息框的标题为空

(5)在窗体上画一个文本框(名称为Text1)和一个标签(名称为Label1),程序运行后,在文本框中每输入一个字符,都会立即在标签中显示文本框中字符的个数,以下可以实现上述操作的事件过程是

A)Private Sub Text1_Change()

n=str(Len())

End Sub

B)Private Sub Text1_Click()

n=str(Len())

End Sub

C)Private Sub Text1_Change()

n=

End Sub

D)Private Sub Label1_Change()

n=str(Len())

End Sub

(6)在窗体上画两个单选按钮(名称分别为Option1,Option2,标题分别为"宋体"和"黑体"),1个复选框(名称为Check1,标题为粗体)和1个文本框(名称为Text1,Text属性为"改变文字字体"),窗体外观如图所示。程序运行后,要求“宋体”单选按钮和“粗体”复选框被选中,则以下能够实现上述操作的语句序列是

A)=False

=True

B)=True

=0

C)=False

=2

D)=True

=1

(7)在窗体上画一个名称为Command1的命令按钮,然后编写如下事件过程:

Private Sub Command1_Click()

c=1234

c1=Trim(Str(c))

For i=1 To 4

Print ____

Next

End Sub

程序运行后,单击命令按钮,要求在窗体上显示如下内容:

1

12

123

1234

则在横线处应填入的内容为

A)Right(c1,i) B)Left(c1,i) C)Mid(c1,i,1) D)Mid(c1,i,1)

(8)假定有一下程序段

For i=1 To 3

For j=5 To 1 Step -1

Print i*j

Next j

Next i

则语句Print i*j 的执行次数是

A)15 B)16 C)17 D)18

(9)在窗体上画两个文本框(名称分别为Text1和Text2)和一个命令按钮(名称为Command1),然后编写如下事件过程:

Private Sub Command1_Click()

x=0

Do While x<50

x=(x+2)*(x+3)

n=n+1

Loop

=Str(n)

=Str(x)

End Sub

程序运行后,单击命令按钮,在两个文本框中显示的值分别为

A)1和0 B)2和72 C)3和50 D)4和168

(10)阅读程序:

Private Sub Command1_Click()

a=0

For j=1 To 15

a=a+j Mod 3

Next j

Print a

End Sub

程序运行后,单击窗体,输出结果是

A)105 B)1 C)120 D)15

(11)以下说法中正确的是

A)当焦点在某个控件上时,按下一个字母键,就会执行该控件的KeyPress事件过程

B)因为窗体不接受焦点,所以窗体不存在自己的KeyPress事件过程

C)若按下的键相同,KeyPress事件过程中的KeyAscii参数与KeyDown事件过程中 的KeyCode参数的值也相同

D)在KeyPress事件过程中,KeyAscii参数可以省略

(12)语句Dim a(-3 To 4,3 To 6) As Integer 定义的数组的元素个数是

A)18 B)28 C)21 D)32

(13)在窗体上画一个命令按钮,其名称为Command1,然后编写如下代码:

Option Base 1

Private Sub Command1_Click()

Dim a

a = Array(1, 2, 3, 4)

j = 1

For i = 4 To 1 Step -1

s = s + a(i) * j

j = j * 10

Next i

Print s

End Sub

程序运行后,单击命令按钮,其输出结果是

A)4321 B)1234 C)34 D)12

(14)假定通过复制,粘贴操作建立了一个命令按钮数组Command1,以下说法中错误的是( )

A)数组中每个命令按钮的名称(Name属性)均为Command1

B)若未做修改,数组中每个命令按钮的大小都一样

C)数组中各个命令按钮使用同一个Click事件过程

D)数组中每个命令按钮的Index属性值都相同

(15)在窗体上画一个命令按钮,名称为Command1,然后编写如下代码:

Option Base 0

Private Sub Command1_Click()

Dim A1(4) As Integer, A2(4) As Integer

For k = 0 To 2

A1(k + 1) = InputBox("请输入一个整数")

A2(3 - k) = A1(k + 1)

Next k

Print A2(k)

End Sub

程序运行后,单击命令按钮,在输入对话框中依次输入2、4、6则输出结果为

A)0 B)1 C)2 D)3

(16)以下关于函数过程的叙述中,正确的是( )

A)函数过程形参的类型与函数返回值的类型没有关系

B)在函数过程中,过程的返回值可以有多个

C)当数组作为函数过程的参数是,既能以传值方式传递,也能以传址方式传递

D)如果不指明函数过程参数的类型,则该参数没有数据类型

(17)在窗体上画两个标签按钮和一个命令按钮,其名称分别为Label1、Label2和Command1,然后编写如下程序:

Private Sub func(L As Label)

n = "1234"

End Sub

Private Sub Form_Load()

n = "ABCDE"

n = 10

End Sub

Private Sub Command1_Click()

a = Val(n)

Call func(Label1)

n = a

End Sub

程序运行后,单击命令按钮,则在两个标签中显示的内容分别为

A)ABCD和10 B)1234和100 C)ABCD和100 D)1234和10

(18)在窗体上画一个命令按钮(名称为Command1),并编写如下代码:

Function fun1(ByVal a As Integer, b As Integer) As Integer

Dim t As Integer

t = a - b

b = t + a

fun1 = t + b

End Function

Private Sub Command1_Click()

Dim x As Integer

x = 10

Print fun1(fun1(x, (fun1(x, x - 1))), x - 1)

End Sub

程序运行后,单击命令按钮,输出结果是

A)10 B)0 C)11 D)21

(19)以下关于过程及过程参数的描述中,错误的是

A)过程的参数可以是控件名称

B)调用过程时使用的实参的个数应与过程形参的个数相同

C)只有函数过程能够将过程中处理的信息返回到调用程序中

D)窗体可以作为过程的参数

(20)设有如下通用过程

Public Function Fun(xStr As String) As String

Dim tStr As String, strL As Integer

tStr = ""

strL = Len(xStr)

i = strL / 2

Do While i <= strL

tStr = tStr & Mid(xStr, i + 1, 1)

i = i + 1

Loop

Fun = tStr & tStr

End Function

在窗体上画一个名称为Text1的文本框和一个名称为Command1的命令按钮。然后编写如下事件过程( )

Private Sub Command1_Click()

Dim S1 As String

S1 = "ABCDEF"

= LCase(Fun(S1))

End Sub

程序运行后,单击命令按钮,文本框中显示的是

A)ABCDEF B)abcdef C)defdef D)defabc

(21)在窗体上画一个命令按钮和一个文本框(名称分别为Command1和Text1),并把窗体的KeyPreview属性设置为True,然后编写如下代码:

Dim SaveAll As String

Private Sub Form_Load()

Show

= ""

us

End Sub

Private Sub Command1_Click()

= LCase(SaveAll) + SaveAll

End Sub

Private Sub Form_KeyPress(KeyAscii As Integer)

SaveAll = SaveAll + Chr(KeyAscii)

End Sub

程序运行后,直接用键盘输入:VB,再单击命令按钮则文本框中显示的内容为

A)vbVB B)不显示任何信息 C)VB D)出错

(22)设有以下程序

Private Sub Form_Click()

x = 50

For i = 1 To 4

y = InputBox("请输入一个整数")

y = Val(y)

If y Mod 5 = 0 Then

a = a + y

x = y

Else

a = a + x

End If

Next i

Print a

End Sub

程序运行后,单击窗体,在输入对话框中依次输入15,24,35,46,输出结果为

A)100 B)50 C)120 D)70

(23)以下关于菜单的叙述中,错误的是

A)当窗体为活动窗体时,用Ctrl+E键可以打开菜单编辑器

B)把菜单项的Enabled属性设置为False,则可删除该菜单项

C)弹出式菜单在菜单编辑器中设计

D)程序运行时,利用控件数组可以实现菜单项的增加或减少

(24)以下叙述中错误的是

A)在程序运行时,通用对话框控件是不可见的

B)调用同一个通用对话框控件的不同方法(如ShowOpen或ShowSave)可以打开不同的对话框窗口

C)调用通用对话框控件的ShowOpen方法,能够直接打开在该通用对话框中指定的文件

D)调用通用对话框控件的ShowColor方法,可以打开颜色对话框窗口

(25)设在工程文件中有一个标准模块,其中定义了如下记录类型:

Type Books

Name As String*10

TelNum As String*20

End Type

在窗体上画一个名为Command1的命令按钮,要求当执行事件过程Command1_Click时,在顺序文件中写入一条Books类型的记录,下列能够完成该操作的事件过程是

A)Private Sub Command1_Click()

Dim B As Books

Open "" For Output As #1

= InputBox("输入姓名")

= InputBox("输入电话号码")

Write #1, ,

Close #1

End Sub

B)Private Sub Command1_Click()

Dim B As Books

Open "" For Output As #1

= InputBox("输入姓名")

= InputBox("输入电话号码")

Print #1, ,

Close #1

End Sub

C)Private Sub Command1_Click()

Dim B As Books

Open "" For Output As #1

= InputBox("输入姓名")

= InputBox("输入电话号码")

Write #1, B

Close #1

End Sub

D)Private Sub Command1_Click()

Dim B As Books

Open "" For Output As #1

= InputBox("输入姓名")

= InputBox("输入电话号码")

Print #1, Name,TelNum

Close #1

End Sub

二、填空题

(1)窗体如图所示,其中汽车是名称为Image1的图像框,命令按钮的名称Command1, 计时器的名称为Timer1,直线的名称为Line1。程序运行时,单击命令按钮,则汽车每0.1秒向左移动100,车头到达左边的直线时停止移动。请填空完成下面的属性设置和程序,以便实现上述功能。

1)Timer1的Interval属性的值应事先设置为 【6】

2)Private Sub Command1_Click()

d = True

End Sub

3)Private Sub Timer1_Timer()

If > 【7】 Then

= 【8】 - 100

End If

End Sub

(2)设窗体上有一个名称为Combo1的组合框,并有以下程序:

Private Sub Combo1_KeyPress(KeyAscii As Integer)

If 【9】 = 13 Then

For k = 0 To unt - 1

If = (k) Then

= ""

Exit For

End If

Next k

If <> "" Then

m 【10】

End If

End If

End Sub

程序的功能是:在组合框的编辑区中输入文本后按回车键,则检查列表中有无与此文本相同的项目,若有,则把编辑区中的文本删除,否则把编辑区中的文本添加到列表的尾部。请填空。

(3)在当前目录下有一个名为""的文本文件,其中有若干行文本。下面程序的功能是读入此文件中的所有文本行,按行计算每行字符的ASCII码之和,并显示在窗体上。请填空

Private Sub Command1_Click()

Dim ch$, ascii As Integer

Open "" For 【11】 As #1

While Not EOF(1)

Line Input #1, ch

ascii = toascii(【12】)

Print ascii

Wend

Close #1

End Sub

Private Function toascii(mystr$) As Integer

n = 0

For k = 1 To 【13】

n = n + Asc(Mid(mystr, k, 1))

Next k

toascii = n

End Function

(4)本程序实现文本加密。先给定序列:a1,a2,...,an,它们的取值范围是1~n,而且互不相同。加密算法是:把原文本中第k个字符放到加密后文本的第ak个位置处。若原文本长度大于n,则只对前面n个字符加密,后面的字符不变;若原文本长度小于n,则在后面补字符"*"使文本长度为n后再加密。

例如:若给定序列a1,a2,...a7分别为2,5,3,7,6,1,4

当文本为“PROGRAM"时,加密后的文本为"APOMRRG"

当文本为"THANK"时,加密后的文本为"*TA*HKN"

下面的过程code实现这一算法。其中参数数组a()中存放给定序列(个数与数组a的元素个数相等)a1,的值,要加密的文本放在参数变量mystr中,过程执行完毕,加密后的文本仍然放在变量mystr中。请填空。

Option Base 1

Private Sub code(a() As Integer, mystr As String)

Dim ch As String, c1 As String

n = UBound(a) - Len(mystr)

If n > 0 Then

mystr = mystr & String$(n, End If

ch = mystr

For k = 【14】 To UBound(a)

c1 = Mid(mystr, k, 1)

n = 【15】

Mid(ch, n) = c1

Next k

mystr = ch

End Sub

答案

"*")

VB程序设计复习模拟试题一及答案

本文发布于:2024-02-04 10:01:27,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170701208753208.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:过程   命令   按钮   窗体   文本   名称   参数
留言与评论(共有 0 条评论)
   
验证码:
排行榜

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23