vb第六套

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

屏南职专计算机VB第六套模拟题
本试题满分100分,考试时间90分钟。

一、选择题(每题2分,共50分)
1.下列可作为Visual Basic的变量名。

A.4*Delta
B. Alpha
C. 4ABC
D.A(A+B)
2.函数Int(Rnd*10)+1是在范围内产生随机整数。

A. [0,10]
B.[0,9]
C.[1, 9]
D.[1,10]
3.下列四个字符串进行比较,最大的是。

A."abc"
B."CD45"
C."CHINA"
D."6677"
4.用八进制表示Visual Basic的整型常数时,前面要加上的符号是__________。

A.&H
B.&O
C.H
D.O
5.下面正确的赋值语句是。

A.x+y=10+a*sqr(3)
B. y=x+10+a*sqr(3)
C.y=2π*r
D.2y=x+1
6.表达式16/4-2^5*8/4 MOD 5\2的值为_______。

A. 14
B. 4
C. 20
D. 2
7.条件:1<X<=2或10<=X<15,在Visual Basic语言中应写成条件表达式_______。

A. X>1 AND X<=2 OR X>=10 AND X<15
B. X>1 OR X<=2 OR X>=10 OR X<15
C. X>1 OR X<=2 AND X>=10 OR X<15
D. X>1 AND X<=2 AND X>=10 AND
X<15
8.在过程内部定义的局部变量,仅在声明它的_______中有效。

A. 方法
B. 过程
C. 属性
D. 对象
9.对于窗体Form1,执行了Form1.Left=Form1.Left+100语句后,则该窗体。

A.上移
B.下移
C.左移
D.右移
10.窗体里有两个对象,分别是图片框Picture1和标签Label1,下面关于Print方法的使用中,错误的一条是。

A. Picture1.Print 147
B. Print 147
C. Printer.Print 147
D. Label1.Print 147
11.与语句Dim abc%作用相同的语句是_______。

A. Dim abc As Integer
B. Dim abc As Long
C. Dim abc As String
D. Dim abc As Date
12.MsgBox函数的返回值的类型是_______。

A. 整型
B. 字符串
C. 逻辑值
D. 日期型
13.窗体Form1上有两个文本框Text1、Text2和一个命令按钮Command1,编写如下两个事件过程:
Private Sub Command1_Click()
a = Text1.Text + Text2.Text
Print a
End Sub
Private Sub Form_Load()
Text1.Text = "123"
Text2.Text = "321"
End Sub
程序运行时点击Command1按钮,窗体上显示的运行结果是_______。

A. 444
B. 123321
C. 321123
D. 132231
14.下列结构中不属于分支结构的是。

A. If…End If
B. Select Case…End Select
C. With…End With
D. If…Else…End If
15.若x=1,执行语句If x Then x = 0 Else x = 1的结果是_______。

A. 实时错误
B. 编译错误
C. x=1
D. x=0
16.下列程序段的循环结构执行后,i的输出值是_______。

Dim y as Integer
For i = 1 To 10 Step 2
y = y + i
Next i
Print i
A. 25
B. 10
C. 11
D. 因为y初值不知道,所以不确定
17.以下程序段运行后,输出字符的排列顺序是_______。

For i=1 To 6
If i Mod 2=0 Then
Print "#";
Else
Print "*";
End If
Next i
A. #*#*#
B. #####
C. *****
D. *#*#*#
18.以下程序段执行后,变量x的值为______。

x = 0
For i = 1 To 5
For j = 1 To 5
x = x + 1
Next j
Next i
Print x
A. 15
B. 20
C. 25
D. 30
19.使用下列语句:Dim x(1 to 10,3) As Single,则数组元素个数是_______。

A. 20
B. 30
C. 40
D. 50
20. 执行下面程序后,输出的结果是_______。

Private Sub Form_Click()
Dim a(10, 10) As Integer
For i = 1 To 10
For j = 1 To 10
a(i, j) = i * j
Next j, i
Print a(2, 2) + a(3, 3)
End Sub
A. 12
B. 13
C. 14
D. 15
21.以下程序段的运行结果是_______。

Private Sub Form_Click()
Dim m As Integer
Print fac(4)
End Sub
Private Function fac(n) As Long
If n = 1 Then
fac = 1
Else
fac = n * fac(n - 1)
End If
End Function
A. 20
B. 24
C. 18
D. 16
22. 若要以程序代码方式设置在窗体中显示文本的字体大小,则可用窗体对象的_______属性来实现。

A. FontName
B. Font
C. FontSize
D. FontBold
23. 若要求在文本框中输入密码时,文本框中只显示#号,则应在此文本框的属性窗口中设置_______。

A. Caption属性值为#
B. Text属性值为#
C. Passwordchar属性值为#
D. Passwordchar属性值为真
24. 标签的边框风格,由____ ___属性的设置值决定。

A. BorderStyle
B. BackStyle
C. BackColor
D. AutoSize
25. 将数据项"China"添加到列表框List1中成为第一项,应使用语句_______。

A. List1.AddItem "China", 0
B. List1.AddItem "China", 1
C. List1.AddItem 0, "China"
D. List1.AddItem 1, "China"
二、是非题(每题1分,共10分,正确的打√,错误的打×)
1.常量在程序执行期间其值不会发生改变。

( )
2.VB6.0中,变量的首字符必须是字母,后面可以包含空格、句号等字符。

( )
3.一个窗体一定对应一个窗体文件,所以一个应用程序只能包含一个窗体。

( )
4.Int(-4.5)和Fix(-4.5)的结果一样。

( )
5.已知A=12,则Len(A)的结果为2。

( )
6.If x>y Then Max=x Else Max=y 程序段是求两个数中的最大数。

( )
7.阅读下面的程序段:
x = 1
Do
x = x + 1
Loop Until x > 1
Print x
该循环,循环次数1次,检测循环条件2次。

( )
8.若要设置定时器控件的定时时间,可通过Value属性来设置。

( )
9.Dim aa(5) As Interger 不仅定义数组,为数组分配存储空间,还能将数组元素置为0。

( )
10.在调用过程时,参数的传递有按地址和按值两种传递方法。

( )
三、填空题(每空2分,共20分)
1.将数学式cos2(x)(sin(x)+2ab)写成Visual Basic表达式______________。

2.要强制显式变量声明,须在声明段部分加入语句______________。

3.用dim abc as variant 定义的变量abc,其类型是______________。

4.表示x是5的倍数逻辑表达式为______________。

5.以下循环的执行次数是______________。

K = 0
Do While K<=10
K = K + 1
Loop
6.下列程序段的执行结果为______________。

Dim x(3,5)
For i=1 to 3
For j=1 to 5
x(i,j)=i+j
Next j
Next i
Print x(3,4)
7.Visual Basic中的菜单可分为弹出式菜单和______________菜单。

8.执行语句B = MsgBox("XXX","YYY")后,在消息框中的标题信息是____。

9.如果要设置窗体form1的标题为“欢迎使用VB6.0”,使用的语句是____。

10.若使命令按钮不起作用,应将按钮的______________属性设置为False。

11.执行下面的程序,在窗体上显示的输出结果的第一行是(61),第三行是(62),Form_Click()事件过程中的第二个For-Next循环共执行了(63)次。

Option Explicit
Option Base 1
Private Sub Form_Click()
Dim a(5) As Integer, i As Integer, J As Integer
For i=1 To 5
a(i)=2*I-1
Print a(i);
Next i
Print
For j=1 To I-2
Call sub1(a(j), j)
Print j
Next j
End Sub
Public Sub sub1(X As Integer, P As Integer)
If x-P<=2 Then
P=P+1
Else
P=P+2
End If
End Sub
12.下面程序的功能是:单击命令按钮Command1,找出100以内的所有约数之和为一个完全平方数的正整数,并按下图中所示的格式将结果显示在图形框Picture1中。

Option Explicit
Private Sub Command1_Click()
Dim i As Integer, J As Integer
Dim F() As Integer, sum As Integer
For i=3 To 100
(66)
If Fac(i, F, sum) Then
Picture1.Print i; ":";
For J=1 To UBound(F)-1
Picture1. Print F(J); "+";
Next J
Picture1. Print F(J); "=" ; sum; "=" ; Sqr(sum); "^2"
End If
Next i
End Sub
Private Function Fac(ByVal K As Integer, A() As Integer, sum As Integer) As Boolean Dim N As Integer, J As Integer
For N=1 To K
If (67)then
J=J+1
(68)
A(J)=N
Sum=sum + N
End If
Next N
If Sum= (69)Then Fac=True
End Function
13.下面程序执行后,输出的第一行是(70),第二行是(71),第三行是(72)。

Private Sub Form_Click()
Dim a As Integer, b As Integer
a = 10:
b = 15
Print "a="; a, "b="; b
Call test(a, b)
Print "a="; a, "b="; b
End Sub
Private Sub test(ByVal x As Integer, ByVal y As Integer)
x = x + 15
y = y + 10
Print "x="; x, "y="; y
End Sub
14.本程序的功能是:产生10个个位数互不相同的三位随机正整数,并存放到下标与其个位数相同的数组元素中。

例如,395应存到a(5)中。

Option Explicit
Private Sub Form_Click()
Dim a(9)As Integer, X As Integer, k As Integer, i As Integer
Randomize
Do While i<=9
X=Int(Rnd*900+100)
(87)
if a(k)=0 Then
a(k)=X
(88)
End If
Loop
For r=0 To 9
Print a(i);
Next i
End Sub
15.下面程序的功能是:把一个一维数组的元素向左循环移位,移位次数利用InputBox
输入。

如数组A各元素分别为1、2、3、4、5、6、7、8、9、10,移位次数输入3,则结果为4、5、6、7、8、9、10、1、2、3。

Option Explicit
Option Base l
Private Sub Form_Click()
Dim a(10) As Integer, i As Integer, k As Integer
Dim n As Integer
Randomize
For I=1 To 10
a(i)= (94)
Print a(i);
Next J
Print
n=InputBox("输入移位次数", ,1)
For i=1 To n
(95)
Next i
For i=1 To 10
Print a(i);
Next I
End Sub
Private Sub ste(a( ) As Integer)
Dim i As Integer, k As Integer
k=a(1)
For I=1 to Ubound(a)-1
(96)
Next i
(97)
End Sub
16.如下程序是从键盘上输入一个正整数,找出大于或等于该数的第一个素数。

Private Sub command1_Click()
Dim i As Integer, x As Integer, y As Integer, flag As Boolean
flag = False
x = InputBox("请输入一个正整数", "输入正整数")
y = x
Do While Not flag
i = 2
flag = (98)
Do While flag And i <= x / 2
If x Mod i = 0 Then
flag = False
Else
(99)
End If
Loop
If Not flag Then (100)
Loop
Print "大于或等于" & Str(y) & "的第一个素数是:" & Str(x)
End Sub
17.下面程序的功能是:将以“12;3;15”形式输入的字符串分解为数字12、3、15,分别赋给3个数组元素,并对其进行简单运算(图2为本程序执行画面)。

Private Sub Command1_Click()
Dim a(3) As Integer, i As Integer
Dim n As Integer
Dim S As String
s=(116)
For i=l To 2
n=InStr(s, ";")
a(i)=Left(s, n-1)
S=(117)图 2
Next I
(118)
Text2. Text=a(1)*a(2)+a(3)
End Sub
18.给定一个十进制正整数,找出小于它并与其互质的所有正整数(所谓互质数是指最大公约数为1的两个正整数)。

Option Explicit
Private Function gcd((146)) As Integer
Dim r As Integer
r = m Mod n
If r = 0 Then
gcd = n
Else
m = n: n = r
(147)
End If
End Function
Private Sub Command1_Click()
Dim n As Integer, p As Integer
n = Val(Text1)
For p = n - 1 To 2 Step -1
If (148) Then List1.AddItem p
Next p
End Sub
19.执行下面的程序,单击窗体,则在窗体上显示的是(226)。

Option Explicit
Private Sub Form_Click()
Dim a As Integer, b As Integer, c As Integer
b=6: c=6.5
a=b=c
Print a
End Sub
20.100匹马驮100担货,大马1匹驮3担,中马1匹驮2担,小马2匹驮1担,编程计算大马、中马、小马的数量。

设大马为x,中马为y,小马为z。

请将下列程序补充完整。

程序代码如下:
Private Sub Command1_Click()
Dim x As Integer,y As Integer,z As Integer
__(254)_____
Do While Z<100
X=3*Z \ 2-100
Y=200-5*Z \ 2
If ___(255)_ _______ Then
Print "大马=";x,"中马=";y,"小马=";z
End If
Z=Z+2
Loop
End Sub
21.下面是一个求两位数的程序,要求每一个两位数的两个数码各不相同,并统计有多少个这样的两位数,显示所有满足条件的两位数。

阅读程序,并在________处填上正确内容。

Private Sub Command1_Click()
n=0
For a=___(256)______
For b=0 To 9
If a<>b And b<>a Then
K=10*a+b
N=____(257)____
Print k;
End If
Next ___(258)_____
Print "number=", n
End Sub
四、编程题(每题10分,共20分)
1. 从键盘上输入两个正整数,求最大公约数。

注:程序写在命令按钮Command1的Click 事件中。

2.编写一个通用输入界面,对输入文本框的内容进行检查,在文本框的LostFocus事件过程中调用通用过程CheckInput,在CheckInput过程中用MsgBox显示输入的是字母、整数、实数还是其他字符。

3.编写程序统计出从文本框输入的字符串中的字母、数字、空格和其他字符的个数,由不同的文本框显示个数,设计界面并实现功能。

4.有5个人坐在一起,问第5个人多少岁?他说比第4个人大2岁。

问第4个人岁数,他说比第3个人大2岁。

问第3个人,又说比第2个人大2岁。

问第2个人,说比第1个人大2岁。

最后问第1个人,他说是10岁。

请问第5个人有多大岁数?
参考答案
1. 参考程序如下:
Private Sub Form_Click()
Dim a, b, c, s, t As Single
a = Val(InputBox(″请输入A边的边长″))
b = Val(InputBox(″请输入B边的边长″))
c = Val(InputBox(″请输入C边的边长″))
If a + b <= c Or b + c <= a Or c + a <= b Then
MsgBox ″所输入的值不能构成三角形!″
Exit Sub
End If
s = (a + b + c) / 2
t = Sqr(s * (s - a) * (s - b) * (s - c))
Print "三角形的面积为:"; t
End Sub
2. 参考程序如下:
Private Sub Command1_Click()
Dim a(1 To 3, 1 To 3) As Integer
Dim i As Integer, j As Integer, s As Integer
For i = 1 To 3
For j = 1 To 3
a(i, j) = Val(InputBox("请输入数组元素:")) Next j
Next i
s = 0
For i = 1 To 3
For j = 1 To 3
If i = j Or i = 4 - j Then s = s + a(i, j)
Next j
Next i
Print s;
End Sub。

相关文档
最新文档