当前位置:文档之家› VB上机试题及答案

VB上机试题及答案

VB上机试题及答案
VB上机试题及答案

上机操作练习题

1.某数组有20个元素,其值为随机产生的两位整数。现要求将前10个元素与后10个元素对换。即第1个元素与第20个元素互换,第2个数与第19个元素互换,…,第10个元素与第11个元素互换。在窗体上输出数组原来各元素的值与对换后各元素的值。

Option explicit

Dim a(1 to 20) as integer, I as integer, j as integer, t as integer

Private Sub Form_Load()

Show

Print "原始数组是:"

Randomize

For i = 1 To 20

a(i) = Int(Rnd * 90) + 10

Print a(i);

If i Mod 10 = 0 Then Print

Next i

Print

Print "现在数组是:"

For i = 1 To 10

j = 21 - i

t = a(i): a(i) = a(j): a(j) = t

Next i

For i = 1 To 20

Print a(i);

If i Mod 10 = 0 Then Print

Next i

End Sub

2.从数组中删除一个数。先定义一个一维数组,大小、数组的值自定。从键盘上输入一个数,若这个数在数组当中,就把它删除;若这个数不在数组中,提示“该数不在数组中”

注意:1)如果数组中存在多个与该数相同的元素,每一个都能删除;

2)能实现多次删除

Private Sub Form_Load()

Show

ReDim a(9) As Integer

m = 1

Print "原来数组为:"

For i = 0 To 9

a(i) = InputBox("请输入第" & m & "个数:")

Print a(i);

m = m + 1

Next i

Print

n = InputBox("查找的数是:")

i = 0: flag = False

Do

If a(i) = n Then

j = i: flag = True

For k = j To UBound(a) - 1

a(k) = a(k + 1)

Next k

ReDim Preserve a(UBound(a) - 1)

i = i - 1

End If

i = i + 1

Loop While (i <= UBound(a))

If flag = False Then

MsgBox n & "不在该数组中"

Else

Print "删除" & n & "后的数组是:"

For i = 0 To UBound(a)

Print a(i);

Next i

End If

End Sub

3.数组a中存放着升序排列的数据,使用array赋值,将inputbox输入的新数插入到数组中,插入后数组仍有序。

注意:要求利用动态数组,能够实现多次插入

Private Sub Form_Load()

Show

n = 8: ReDim a(n)

a = Array(5, 15, 23, 52, 68, 88, 90, 99)

n = n + 1: ReDim Preserve a(n)

m = InputBox("请输入要插入的数据:")

For i = 1 To n - 1

If m < a(i) Then Exit For

Next i

For k = n To i + 1 Step -1

a(k) = a(k - 1)

Next k

a(k) = m

For i = 1 To n

Print a(i);

Next i

Print

End Sub

4.6个评委为4位歌手打分,分数介于1-100之间。去掉一个最高分,一个最低分,求出每位选手的最后得分。将4位歌手得分从高到低排列输出,同时输出该选手的编号。

如:歌手3 95分歌手 1 87分歌手 4 80分歌手 2 70分

Option Base 1

Private Type geshou

xuhao As String

fenshu(6) As Integer

score As Integer

pingjun As Integer

End Type

Dim singer(1 To 4) As geshou

Private Sub Command1_Click()

For i = 1 To 4

For j = 1 To 6

singer(i).fenshu(j) = Int(Rnd * 100)

singer(i).xuhao = "歌手" & i

Next

Next

Call paixu

End Sub

Private Sub paixu()

Dim p As geshou

For i = 1 To 4

For j = 1 To 5

For k = j To 6

If singer(i).fenshu(j) > singer(i).fenshu(k) Then

t = singer(i).fenshu(j)

singer(i).fenshu(j) = singer(i).fenshu(k)

singer(i).fenshu(k) = t

End If

Next

Next

Next

For i = 1 To 4

For j = 2 To 5

singer(i).score = singer(i).score + singer(i).fenshu(j) Next

singer(i).pingjun = singer(i).score / 4

Next

For i = 1 To 3

For j = i To 4

If singer(i).score < singer(j).score Then

p = singer(i): singer(i) = singer(j): singer(j) = p End If

Next

Next

For i = 1 To 4

Print singer(i).xuhao & "得分:" & singer(i).pingjun

Next

End Sub

Private Sub Form_Load()

End Sub

10个评委给10个选手打分

Private Sub Form_Load()

Show

n = UBound(b)

For i = 1 To 10

For j = 1 To 10

a(i, j) = Val(InputBox("请第" & j & "位评委给第" & i & "位选手打分:"))

Next j

Next i

For i = 1 To 10

max = a(i, 1): sum = 0

min = a(i, 1): ave = 0

For j = 1 To 10

If a(i, j) > max Then max = a(i, j)

If a(i, j) < min Then min = a(i, j)

sum = sum + a(i, j)

Next j

ave = (sum - max - min) / (n - 2)

b(i) = ave

Next i

For i = 1 To n - 1

For j = i + 1 To n

If b(i) < b(j) Then

t = b(i): b(i) = b(j): b(j) = t

End If

Next j

Next i

Print "选手的得分由高到低为:"

For i = 1 To 10

Print b(i);

Next i

End Sub

5.编写函数求一元二次方程ax2+bx+c=0的解。

注意:要求考虑方程有两相等实根、两不等实根和两个虚根的情况。

Dim a As Single, b As Single, c As Single

Dim s As Single

a = InputBox("请输入a")

b = InputBox("请输入b")

c = InputBox("请输入c")

s = b ^ 2 - 4 * a * c

If s < 0 Then

MsgBox ("方程无解")

ElseIf s = 0 Then

Print -b / 2 * a

Else

Print ((-b) + Sqr(s)) / 2 * a & " " & ((-b) - Sqr(s)) / 2 * a

End If

End Sub

6. 任意输入一组字符,统计出大写字母多少个,小写字母多少个,数字多少个?要求用过程实现。

Call tongji(a, n, m, o)

Print "数字:" & n & Chr(13) & "小写:" & m & Chr(13) & "大写:" & o End Sub

Private Sub tongji(a As String, n As Integer, m As Integer, p As Integer)

For i = 1 To Len(a)

If Asc(Mid(a, i, 1)) > 47 And Asc(Mid(a, i, 1)) < 58 Then

n = n + 1

ElseIf Asc(Mid(a, i, 1)) > 96 And Asc(Mid(a, i, 1)) < 123 Then

m = m + 1

ElseIf Asc(Mid(a, i, 1)) > 64 And Asc(Mid(a, i, 1)) < 91 Then

p = p + 1

End If

Next

End Sub

7.随机产生一个5*5的矩阵,将主对角线和次对角线元素都置为1,并求出矩阵的四周元素之和,显示在列表框中。

Option Base 1

Private Sub Form_Load()

Dim a(5, 5) As Integer

Dim s As Integer

For i = 1 To 5

For j = 1 To 5

If i = j Or i = 6 - j Then

a(i, j) = 1

Else

a(i, j) = Int(Rnd * 1000)

End If

Text1.Text = Text1.Text & " " & a(i, j)

s = s + a(i, j)

Next

Text1.Text = Text1.Text & vbCrLf & vbCrLf

Next

List1.AddItem (s)

End Sub

8.编写一个函数,能将字母按下列规律译成密码:

A<-->Z a<-->z

B<-->Y b<-->y

即第1个字母与第26个字母互换,第i个字母与第(26-i+1)个字母互换。在文本框中任意输入一个字符串,调用该函数将密码显示在另

一个文本框中。

Private Sub Command1_Click()

Dim s1 As String

s1 = Text1.Text

Text2.Text = convert(s1)

End Sub

Private Function convert(s1 As String) As String

For i = 1 To Len(s1)

If Asc(Mid(s1, i, 1)) < 91 And Asc(Mid(s1, i, 1)) > 64 Then

convert = convert & Chr(91 - Asc(Mid(s1, i, 1)) + 64)

ElseIf Asc(Mid(s1, i, 1)) < 123 And Asc(Mid(s1, i, 1)) > 96 Then

convert = convert & Chr(123 - Asc(Mid(s1, i, 1)) + 96)

End If

Next

End Function

9.编写2个函数,分别求两个正整数的最大公约数和最小公倍数,用户任意输入两个数,采用函数嵌套调用,该函数将它们在窗体显示。

Private Sub Form_Load()

Text1 = "": Text2 = ""

End Sub

Private Sub Text1_KeyPress(KeyAscii As Integer)

If KeyAscii = 13 Then Text2.SetFocus

End Sub

Private Sub Text2_KeyPress(KeyAscii As Integer)

Dim m As Integer, n As Integer, r As Integer, t As Integer, x

Cls

If KeyAscii = 13 Then

m = Text1.Text

n = Text2.Text

If m < n Then

t = m: m = n: n = t

End If

r = m Mod n

While r <> 0

m = n: n = r: r = m Mod n

Wend

Print

If m < 0 Or n < 0 Then

x = MsgBox("请输入正数", vbCritical + vbOKCancel)

If x = vbCancel Then

End

Else

Text1 = "": Text2 = ""

Text1.SetFocus

End If

Else

Print Text1.Text & "和" & Text2.Text & "的最大公约数是:"; n

End If

End If

End Sub

10. 编写计算阶乘的Function过程,利用e x的下列公式计算e(直到最后一项小于10-6为止)的近似值。

e x≈1+x/1!+x2/2!+x3/3!+…+x n/n!

Option Explicit

Private Sub Form_Load()

Show

Dim x As Integer, n As Integer, s As Double

x = InputBox("请输入一个数:")

n = 1: s = 1

Do

s = s + x ^ n / (jiecheng(n))

n = n + 1

Loop Until x ^ n / (jiecheng(n)) < 10 ^ (-6)

Print s

End Sub

Public Function jiecheng(n As Integer) As Double

Dim i As Integer, s As Double

s = 1

For i = 1 To n

s = s * i

Next i

jiecheng = s

End Function

11.输入整数N,显示具有N行的杨辉三角形,要求按正三角形的形式在图片框中显示。

Option Explicit

Private Sub Form_Load()

WindowState = 2

Show

Dim a(), n As Integer, i As Integer, j As Integer, g As Integer, e As Integer

n = InputBox("请输入一个数:")

ReDim a(n, n)

e = 80

For i = 1 To n

e = e - 5: g = e

For j = 1 To n

If j > i Then

a(i, j) = 0

Else

If i = j Then

a(i, j) = 1

Else

a(i, j) = a(i - 1, j) + a(i - 1, j - 1)

End If

End If

If a(i, j) = 0 Then

Exit For

Else

Picture1.Print Tab(g); a(i, j);

g = g + 10

End If

Next j

Picture1.Print

Next i

End Sub

Private Sub Picture1_Click()

End Sub

12.编写一个过程,输出以下菱形图形:

A

BBB

CCCCC

DDDDDDD

CCCCC

BBB

A

主程序输入一个奇数(>=3),调用过程在窗体上输入图形。

Private Sub Command1_Click()

Dim n As Integer

n = InputBox("")

If n Mod 2 = 0 Or n <= 3 Then

MsgBox ("错误")

Else

Call draw(n)

End If

End Sub

Sub draw(n As Integer)

For i = 1 To (n + 1) / 2

s = Chr(64 + i)

Print Tab(41 - i + 1); String(2 * (i - 1) + 1, s)

Next

c = 1

For j = (n - 1) / 2 To 1 Step (-1)

c = c + 1

s = Chr(64 + i - c)

Print Tab(41 - i + c + 1); String(2 * (j - 1) + 1, s)

Next

End Sub

13.编写一个将十进制转换为二进制字符串输出的函数。调用函数计算用户输入一个十进制数,在文本框中输出二进制值。

注意:输入数据为负数,应该将符号位输出

如-13 结果-1101

Option Base 1

Dim a()

Private Function convert(y) As String

Dim i As Integer

i = 1

ReDim a(i)

x = Abs(y)

Do While x <> 0

ReDim Preserve a(i)

a(i) = x Mod 2

If a(i) = 1 Then

x = (x - 1) / 2

Else

x = x / 2

End If

i = i + 1

Loop

ReDim Preserve a(UBound(a))

If y < 0 Then

For i = 1 To UBound(a)

convert = convert & a(i)

Next

convert = "-" & convert

Else

For i = 1 To UBound(a)

convert = convert & a(i)

Next

End If

End Function

Private Sub Command1_Click()

Dim y As Integer

Text1.Text = ""

y = InputBox("请输入十进制数字")

Text1.Text = convert(y)

End Sub

Private Sub Form_Load()

End Sub

14.输入一个整数N,产生N个随机数(范围1—10*N),然后采用任何2种算法实现由小到大的排序。将排序前后的数据显示出来。

Option Base 1

Private Sub Command1_Click()

Dim a() As Integer, n As Integer

n = InputBox("请输入数列项数")

ReDim a(n)

For i = 1 To n

a(i) = Int(Rnd * 10 * n + 1)

Print a(i);

Next

Print

ReDim Preserve a(n)

For i = 1 To n - 1

For j = i + 1 To n

If a(i) > a(j) Then

t = a(i): a(i) = a(j): a(j) = t

End If

Next

Next

ReDim Preserve a(n)

For i = 1 To n

Print a(i);

Next

End Sub

Private Sub Command2_Click()

Dim a() As Integer, n As Integer

n = InputBox("请输入数列项数")

ReDim a(n)

For i = 1 To n

a(i) = Int(Rnd * 10 * n + 1)

Print a(i);

Next

Print

ReDim Preserve a(n)

For i = 1 To n - 1

For j = 1 To n - i

If a(j) > a(j + 1) Then

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

End If

Next

Next

ReDim Preserve a(n)

For i = 1 To n

Print a(i);

Next

End Sub

Private Sub Form_Load()

End Sub

15.编写程序,在窗体上输出3~100之间的所有素数。要求每行显示4个数。

Private Sub Command1_Click()

Dim f As Boolean, c As Integer

For i = 3 To 100

f = False

For j = 2 To Int(Sqr(i))

If i Mod j = 0 Then

f = True: Exit For

End If

Next

If f = False Then

Print i;

c = c + 1

If c Mod 4 = 0 Then

Print

End If

End If

Next

End Sub

Private Sub Form_Load()

End Sub

16.把文本框1、文本框2指定的范围内的所有素数添加到列表框中,并选中列表框数据中最后一位是9的所有数据(设定selected属性),把它们的和值输出。

Public a As Integer

Private Function fact(n) As Long

If n = 1 Then

fact = 1

ElseIf n = 2 Then fact = 1

Else: fact = fact(n - 2) + fact(n - 1)

End If

End Function

Private Sub Command1_Click()

n = InputBox("请输入n")

Print fact(n)

End Sub

Private Function s(n) As Long

s1 = 1: s2 = 1

For i = 1 To n - 2

s = s1 + s2: t = s2: s2 = s: s1 = t

Next

End Function

Private Sub Command2_Click()

n = InputBox("请输入n")

Print s(n)

End Sub

17. 编写2个函数,分别采用递归法和递推法求斐波纳契数列的第n个月的

兔子数,n使用inputbox输入,调用函数的结果在窗体上显示。

Private Sub Command1_Click()

List1.Clear

Dim i As Integer

For i = Val(Text1.Text) To Val(Text2.Text)

If isprime(i) = True Then

List1.AddItem (i)

c = c + 1

If i Mod 10 = 9 Then

List1.Selected(c - 1) = True

s = s + i

End If

End If

Next

Print s

End Sub

Function isprime(n As Integer)

isprime = True

For i = 2 To n - 1

If n Mod i = 0 Then

isprime = False

Exit For

End If

Next

End Function

18 Dim sum As Long

Private Sub Command1_Click()

Dim i As Integer, j As Integer, a(40) As Long

a(1) = 1

a(2) = 1

For i = 3 To 40

a(i) = a(i - 1) + a(i - 2)

Next i

sum = 0

For j = 1 To 40

sum = sum + a(j)

Next j

End Sub

Private Sub Command2_Click()

Open "out18.txt" For Output As #1

Print #1, "数列1,1,2,3,5,8…的前四十项的之和是:"

Print #1, sum

Close #1

End Sub

1.百钱买百鸡

Option Explicit

Private Sub Command1_Click()

Dim a As Integer, b As Integer

For a = 1 To 34

For b = 1 To 20

If 3 * a + 5 * b + (100 - a - b) / 3 = 100 Then

Print a;

Print b;

Print 100 - a - b

End If

Next b

Next a

End Sub

2.分钱作业

Private Sub Command1_Click()

Dim a As Single,b as single,c as single

a = Text1.Text

b = Fix(a / 100)

Print "100元:";

Print b

c = a - 100 * b

b = Fix(

c / 50) Print "50元:"; Print b c = c - b * 50

b = Fix(

c / 20) Print "20元:"; Print b c = c - 20 * b

******************

b = Fix(

c / 0.05) Print "0.05元:"; Print b c = c - 0.05 * b

b = Fix((

c + 0.005) / 0.02) Print "0.02元:"; Print b c = c - 0.02 * b

b = Fix(

c / 0.01) Print "0.01元:"; Print b

End Sub

3.最大公约数、最小公倍数

Option Explicit

Private Sub Command1_Click()

Dim a As Integer, b As Integer, c As Integer, t As Integer

a = InputBox("请输入第一个数:")

b = InputBox("请输入第二个数:")

If a < b Then

c = b

b = a

a = c

End If

t = a Mod b

Do While t <> 0

a = b

b = t

t = a Mod b

Loop

If b = 1 Then

MsgBox ("无最大公约数")

Else

MsgBox ("最大公约数是:" & b)

End Sub

Private Sub Command2_Click()

Dim a As Integer, b As Integer, c As Integer, t As Integer, m As Integer, n As Integer

a = InputBox("请输入第一个数:")

b = InputBox("请输入第二个数:")

If a < b Then

c = b

b = a

a = c

End If

t = a * b

m = a Mod b

Do While m <> 0

a = b

b = m

m = a Mod b

Loop

n = t \ b

MsgBox ("最小公倍数是:" & n)

End Sub

4.输出九九表

Option Explicit

Private Sub Command1_Click()

Dim a As Integer, b As Integer

Print

For a = 1 To 9

For b = 1 To a

Print Tab(b * 9); a & "*" & b; "="; a * b;

Next b

Print

Next a

End Sub

5.排序

Option Explicit

Option Base 1

Dim a(1 To 10) As Integer

Private Sub Command1_Click()

Dim i As Integer, j As Integer

Randomize

For i = 1 To 10

a(i) = Int(Rnd() * 90 + 10)

For j = 1 To i - 1

If a(i) = a(j) Then

GoTo aaa

End If

Next j

Next i

For i = 1 To 10

Print a(i);

Next i

Print

End Sub

Private Sub Command2_Click()

Dim i As Integer, j As Integer, t As Integer For i = 1 To 9

For j = 1 + i To 10

If a(i) > a(j) Then

t = a(j)

a(j) = a(i)

a(i) = t

End If

Next j

Next i

For i = 1 To 10

Print a(i);

Next i

Print

End Sub

Private Sub Command3_Click()

Dim i As Integer, j As Integer, t As Integer For i = 1 To 9

For j = 1 To 10 - i

If a(j) > a(j + 1) Then

t = a(j + 1)

a(j + 1) = a(j)

a(j) = t

End If

Next j

Next i

For i = 1 To 10

Print a(i);

Next i

Print

End Sub

6.求平方根

Option Explicit

Private Sub Command1_Click()

Dim a As Double, b As Double, c As Double, i As Double

a = 0

c = Text1.Text

b = c

Do While Abs(((a + b) / 2) ^ 2 - c) > 10 ^ (-5)

i = (a + b) / 2

If i ^ 2 - c > 0 Then

b = i

ElseIf i ^ 2 - c = 0 Then

Exit Do

Else

a = i

End If

Loop

MsgBox (i)

End Sub

7.闰年

Option Explicit

Private Sub 计算_Click()

Dim i As Integer

i = InputBox("请输入一个年份")

If i Mod 4 = 0 And i Mod 400 = 0 Then

If i Mod 100 <> 0 Then

MsgBox "NOT"

Else

MsgBox "YES"

End If

Else

MsgBox "NOT"

End If

End Sub

8.三角

Option Explicit

Private Sub Command1_Click()

Dim a As Single

Dim b As Single

Dim c As Single

Dim p As Single

Dim s As Single

a = Text1.Text

b = Text2.Text

c = Text3.Text

p = (a + b + c) / 2

s = Sqr((p - a) * p + (p - b) * p + (p - c) * p)

Text4.Text = s

End Sub

9.求素数

Private Sub Command1_Click()

Dim n As Double, i As Double

n = InputBox("请输入一个数:")

For i = 2 To n - 1

If n Mod i = 0 Then

MsgBox "NOT"

Exit For

End If

Next i

If i = n Then

MsgBox "YES"

End If

End Sub

Private Sub Command2_Click()

Dim a As Boolean, n As Double, i As Double

a = False

n = InputBox("请输入一个数:")

For i = 2 To n - 1

If n Mod i = 0 Then

a = True

Exit For

End If

Next i

If a = True Then

MsgBox "NOT"

Else

MsgBox "YES"

End If

End Sub

Private Sub Command3_Click()

Dim n As Double, i As Double

n = InputBox("请输入一个数:")

i = 2

Do While i < n

If n Mod i = 0 Then

MsgBox "NOT"

Exit Do

End If

i = i + 1

Loop

If i = n Then

MsgBox "YES"

End If

End Sub

Private Sub Command4_Click()

Dim n As Double, i As Double, sushu As Boolean n = InputBox("请输入一个数:")

i = 2

sushu = True

Do While i < n And sushu = True

If n Mod i = 0 Then

sushu = False

End If

i = i + 1

Loop

If sushu = True Then

MsgBox "YES"

Else

MsgBox "NOT"

End If

End Sub

VB期末考试试题及答案

二、选择题 1、菜单控件只包括一个事件,即 C ,当用鼠标单击或键盘选中后按“回车”键时触发该事件,除分隔条以外的所有菜单控件都能识别该事件。 A、GotFocus B、Load C、Click D、KeyDown 2、滚动条控件(如图所示)的Max属性所设置的是 A 。 A、滚动框处于最右位置时,一个滚动条位置的Value属性最大设置值 B、单击滚动条和滚动箭头之间的区域时,滚动条中滚动块的最大移动量 C、单击滚动条的箭头区域时,滚动条中滚动块的最大移动量 D、滚动条控件无该属性 3、SQL 语句 Select * Form student 中的 *表示 B 。 A、所有记录 B、所有字段 C、所有表 D、都不对 4、以下选项中,不属于标签的属性是 C 。 A、Enabled B、Caption C、Default D、Font 5、要求改命令按钮显示的文本,应当在属性窗口中改变的属性是 A 。 A、Caption B、Name C、Text D、Label 6、设置一个单选按钮(OptionButton)所代表选项的选中状态,应当在属性窗口中改变的属性是 D 。 A、Caption B、Name C、Text D、Value

7、允许在菜单项的左边设置打勾标记,下面哪种论述是正确的 D 。 A、在标题项中输入&,然后打勾 B、在索引项中打勾 C、在有效项中打勾 D、在复选项中打勾 8、当执行以下过程时,在窗体上将显示 A 。 Private Sub Command1_Click( ) Print "VB"; Print "Hello! "; Print "VB" End Sub A、 VBHello!VB B、 VB Hello!VB C、 VB D、 VB Hello! VB Hello! VB 9、语句Print "The answer is:";20/4-2的结果为 B 。 A、The answer is 20/4-2 B、The answer is 3 C、The answer is "20/4-2" D、非法语句 10、下列哪个控件是容器控件 B 。 A、Image B、Picture C、ComboBox D、FileListBox 11、若要将窗体从内存中卸载出去,其实现的方法是 D 。 12、以下选项中,不是 Visual Basic控件的是 A 。 A.窗体 B.定时器 C.单选框 D.命令按钮 13、双击窗体中的对象后,Visual Basic将显示的窗口是 A 。 A.代码窗口 B.工具箱 C.项目(工程)窗口 D.属性窗口 14、可决定窗体的左上角是否有控制菜单的属性是 A 。 15、设有如下语句: Strl=InputBox("输人","","练习") 从键盘上输人字符“示例”后,Strl的值是 D 。 A.“输入” B.“” C.“练习” D.“示例” 16、窗体Form1的Name属性是Frm1,它的单击事件过程名是 C 。 A. Form1_Click C. Frm1_Click D. Me_Click 17、窗体的hide属性的含义是 A 。 A.隐藏 B.展现 C.装入 D.卸载 18、若要设置定时器控件的定时时间,需设置的属性是 C 。 A.Enabled B.Value C.Interval D.Text 19、能够改变复选框中背景颜色的属性是 C 。

大学VB考试题库

大学VB考试题库 一、单项选择题 1、与传统的程序设计语言相比,Visual Basic最突出的特点是()。 A、结构化程序设计 B、程序开发环境 C、事件驱动编程机制 D、程序调试技术 2、赋值语句:a=123& MID("123456",3,2)执行后,a变量中的值是()。 A、"12334" B、123 C、12334 D、157 3、保存一个工程至少应保存两个文件,这两个文件分别是(B)。 A、文本文件和工程文件 B、窗体文件和工程文件 C、窗体文件和标准模块文件 D、类模块文件和工程文件 4、以下能在窗体Form1的标题栏中显示"VisualBasic窗体"的语句是(C)。 A、https://www.doczj.com/doc/3e18626781.html,="VisualBasic窗体" B、Form1.Title="VisualBasic窗体" C、Form1.Caption="VisualBasic窗体" D、Form1.Text="VisualBasic窗体" 5、为了装入一个VisualBasic应用程序,应当(D) A、只装入窗体文件(.frm) B、只装入工程文件(.vbp) C、分别装入工程文件和标准模块文件(.bas) D、分别装入工程文件、窗体文件和标准模块文件 6、赋给一个数组的数据类型一定要(A)。 A、相同 B、不相同 C、两可 D、都不对 7、下面正确的赋值语句是(C)。 A、x+y=30 B、y=π*r*r C、y=x+30 D、3y=x 8、VisualBasic 6.0集成环境的主窗口中不包括(C)。

A、标题栏 B、菜单栏 C、状态栏 D、工具栏 9、以下叙述中错误的是(C)。 A、Visual Basic 是事件驱动型可视化编程工具 B、Visual Basic应用程序不具有明显的开始和结束语句 C、Visual Basic工具箱中的所有控件都具有宽度(Width)和高度(Height)属性(计时器) D、Visual Basic中控件的某些属性只能在运行时设置 10、要使Print方法在Form_Load事件中起作用,要对窗体的(C)属性进行设置。 A、Backcolor B、ForeColor C、AutoRedraw D、BackStyle 11、若要使命令按钮不可操作,要对(A)属性进行设制。 A、Enabled B、Visible C、BackColor D、Caption 12、以下叙述中错误的是(B)。 A、一个工程中可以包含多个窗体文件 B、在一个窗体文件中用Private定义的通用过程能被其他窗体调用 C、在设计VB程序时,窗体、标准模块、类模块等需要分别保存为不同类型的磁盘文件。 D、一个工程默认的启动对象是Form1 13、Cls方法可以清除窗体或图片框中的(C)内容。 A、在设计阶段使用Picture设置的背景位图 B、在设计阶段放置的控件 C、在运行阶段产生的图形和文字 D、以上均可 14、设x=3,y=5,则以下表达式值为真的是 (C) A、(-3+5>x) And (y>0) B、(x<0) Eqv (y>0) C、(x>y) Or (y>0) D、x>=y And y>10 15、为了防止用户随意将光标置于控件之上,应将进行(D)设置。 A、将控件的TabIndex属性设置为0

VB上机综合测试题(十五套)

VB上机综合测试题(一) 一、如下所示,在窗体上,放置一个文本框text1(文本框中的文字为“改变字形”,居中显示)。三个复选框check1,check2和check3,如图设置属性。要求:当用户单击“加粗”、“斜体”、“下划线”这三个复选框时(即当复选框被选中时)能将文本框的字形变为“粗体、斜体、加下划线”(25分) 二、在窗体上添加一个命令按钮(名称为Cmd1,标题为"输出平均值")。程序运行后,单击命令按钮完成以下工作:①随机产生20个0到1000的整数,将其放入一个一维数组中②求出所有元素的平均值,并显示在窗体上(如下图所示)(35分) 三、请设计如下图所示窗体界面。运行程序时,先向左侧文本框中输入一个不超过10的正整数,然后选择"N的阶乘"或"(N+2)的阶乘"单选钮,即可进行计算,计算结果在右侧文本框中显示。请编写程序完成上述功能。(40分)

答案: 一、 界面设计------10分 Private Sub Check1_Click() = ------5分 End Sub Private Sub Check2_Click() = 分 End Sub Private Sub Check3_Click() = ------5分 End Sub 二、 界面设计------10分 Private Sub Cmd1_Click()------2分Dim a%(19), i%, sum!, aver! ------4分Randomize ------3分 For i = 0 To 19------3分 a(i) = Int(Rnd * 1001) ------3分 sum = sum + a(i) ------3分 Next i ------2分 aver = sum / 20 ------3分 Print aver ------2分 End Sub 三、 界面设计------10分 Dim? n%------2分 Private Sub Form_Load() End Sub

vb程序设计试题(含答案)

第一套试题 一、选择题(每题2分,共30分) 1.在VB环境中,工程文件的扩展名是( C ) (A).frm (B).bas (C).vbp (D).frx 2.下面4项中不属于面向对象系统三要素的是( A ) (A)变量(B)事件(C)属性(D)方法 3. \、/、Mod、*这4个算述运算符中,优先级别最低的是( C ) (A)\ (B)/ (C)Mod (D)* 4.要使Print方法在Form_Load事件中起作用,要对窗体的( C )属性进行设置(A)BackColor (B)ForeColor (C)AutoRedraw (D)Caption 5.不论何控件,共同具有的属性是( B ) (A)Text (B)Name (C)ForeColor (D)Caption 6.要使Form1窗体的标题栏显示“欢迎使用VB”,以下语句正确的是( D ) (A)Form1.Caption=“欢迎使用VB”(B)Form1.Caption=ˊ欢迎使用VBˊ(C)Form1.Caption=欢迎使用VB (D)Form1.Caption=〞欢迎使用VB〞 7.VB提供了结构化程序设计的3种基本结构,这3种基本结构是( D ) (A)递归结构,选择结构,循环结构(B)选择结构,过程结构,顺序结构 (C)过程结构,输入、输出结构,转向结构(D)选择结构,循环结构,顺序结构 8.给变量赋值a=123+MID(“123456”,3,2),a变量中的值是( D ) (A)“12334”(B)123 (C)12334 (D)157 9.下面If语句统计满足性别为男、职称为副教授以上、年龄小于40岁条件的人数,不正确的语句是( D ) (A)If sex=“男”And age<40 And InStr(duty,“教授”)>0 Then n=n+1 (B)If sex=“男”And age<40 And (duty=“教授”Or duty=“副教授”) Then n=n+1 (C)If sex=“男”And age<40 And Right(duty,2)= “教授” Then n=n+1 (D)If sex=“男”And age<40 And duty=“教授”And duty=“副教授” Then n=n+1 10.若要清除列表框的所有内容,可用来实现的方法是( C )

计算机二级VB考试题及答案

计算机二级VB考试题及答案 为了使广大考生在备战计算机等级考试时,更快的掌握相应知识点,下面是搜索的计算机二级VB考试题及答案,供参考练习,预祝考生们考出自己理想的成绩! 1.在窗体上画一个名称为Text1的文本框,一个名称为Command1的命令按钮,然后编写如下事件过程和通用过程: Private Sub Command1_Click( ) n = Val(Text1.Text) If n2 = n/2 Then f = f1(n) Else f = f2(n) End If

Print f; n End Sub Public Function f1(ByRef x) x=x*x f1=x+x End Function Public Function f2(ByVal x) x=x*x f2=x+x+x End Function 程序运行后,在文本框中输入3,然后单击命令按钮,窗体上显示的是(D)(单)

A.72 36 B.108 36 C.72 6 D.27 3 2.在窗体上画一个名称为Command1的命令按钮,然后编写如下事件过程: Private Sub Command1_Click( ) c = "1234" For i = 1 To 4 c1 = Trim(Str( )) Print c1

Next i End Sub 程序运行后,单击命令按钮,要求在窗体上显示如下内容 12 123 1234 则在下划线处应填入的内容为(B)(单) A.Right(c1,i) B.Left(c1,i) C.Mid(c1,i,1) D.Mid(c1,i,i)

VB上机程序调试题_题目及参考答案

第二部分VB上机考试模拟试题 一、程序调试题(改错或填空) (二)程序调试题 [题1] Modify.bas模块中的getanswer过程是用于计算一元二次方程的根,并将结果输出来。 Option Explicit Public Sub getanswer() '该过程是用于计算一元二次方程的根,并将结果输出来。 Dim dalt!, a#, b#, c# a = InputBox("输入系数a") b = InputBox("输入系数b") c = InputBox("输入系数c") dalt = b * b - 4 * a * c If ----1---- dalt >0 then dalt = Sqr(dalt) MsgBox Format((-b + dalt) / 2 / a), "0.00" + Chr(13) + Chr(10) + Format((-b - dalt) / 2 / a, "0.00") Elseif ---2---- dalt =0 then MsgBox Format(-b / 2 / a, "0.00") + Chr(13) + Chr(10) + Format(-b / 2 / a, "0.00") Else dalt= ---3---- Sqr(-dalt) MsgBox Format((-b + dalt) / 2 / a, "0.00") + "+i" + Chr(13) + Chr(10) + Format((-b - dalt) / 2 / a, "0.00") + "-i" End If End Sub [题2] 打印输出一菱形图案。 Public Sub prt() '打印由#组成的菱形图案 ' # ' ### ' ##### ' ####### ' ######### ' ####### ' ##### ' ### Dim start As String '每行起始空格数 Dim count As Integer '每行#个数 For i = 1 To 9 If i <= 5 Then '------1------ start=space(21-i) count = 2 * i - 1 Else start = Space(11 + i) '-------2------ count=19-2*i End If '------3------ form1.print start; For j = 1 To count Form1.Print "#"; Next j '------4------ form1.print Next i [题3] 过程pyramid用以打印一个数字金字塔,请在横线上填入必要的内容(将横线删除掉后填入正确的内容),使其完整。 Option Explicit Public Sub pyramid() '打印数字金字塔 ' 1 ' 222 ' 33333 ' 4444444 ' 555555555 ' 6666666 ' 77777 ' 888 ' 9 Dim i As Integer Dim j As Integer Dim start As String '每行起始空格数 Dim num As Integer '每行数字个数 For i = 1 To 9 If i <= 5 Then start = Space(20 - i) num = 2 * i - 1 Else start= '------1------ Space(10 + i) num= '------2------ 2 * (10-i) - 1 End If Form1.Print start; For j = 1 To num '------3------ form1.print trim(str(i)); Next j '------4------ form1.print Next i End Sub [题4] 改错。 Option Explicit Public Sub prt() '打印由数字组成的如下所示金字塔图案 ' 9 ' 888 ' 77777 ' 6666666 ' 555555555 ' 44444444444 ' 3333333333333 ' 222222222222222 ' 11111111111111111 Dim i As Integer, j As Integer '****** 错误1 ****** For i = 9 To 1 step -1 Form1.Print Space(i); '****** 错误2 ****** For j = 1 To 2 *(10- i) - 1 '****** 错误3 ****** Form1.Print trim(str(i)); Next j

VB练习题(上机)含答案

第一部分 1 在窗体上添加一个命令按钮(名称为Cmd1,标题为"输出平均值")。程序运行后,单击命令按钮完成以下工作: ①随机产生20个0到1000的整数,将其放入一个一维数组中 ②求出所有元素的平均值,并显示在窗体上(如下图所示) Private Sub Cmd1_Click() Dim a%(19), i%, sum!, aver! Randomize For i = 0 To 19 a(i) = Int(Rnd * 1001) sum = sum + a(i) Next i aver = sum / 20 Print aver End Sub 2 请在名称为Form1的窗体上添加一个名称为Text1的文本框和一个名称为C1、标题为"转换"的命令按钮,如下图所示。在程序运行时,单击"转换"按钮,可以把Text1中的小写字母转换为大写,把大写字母转换为小写,其他字符不变。 Private Sub C1_Click() Dim ch As String, ch1 As String, i% ch = Text1 For i = 1 To Len(ch) If Asc(Mid(ch, i, 1)) >= 65 And Asc(Mid(ch, i, 1)) <= 90 Then ch1 = ch1 + LCase(Mid(ch, i, 1)) Else

ch1 = ch1 + UCase(Mid(ch, i, 1)) End If Next i Text1 = Text1 + vbCrLf Text1 = Text1 + ch1 End Sub 3 在窗体上添加一个命令按钮(名称为MyCmd1,标题为"输出最大值")。程序运行后,单击命令按钮完成以下工作: ①随机产生30个0~1000的整数,将其放入一个一维数组中 ②求出其中的最大值,并显示在窗体上。 Private Sub MyCmd1_Click() Dim a%(29), i%, max% Randomize For i = 0 To 29 a(i) = Int(Rnd * 1001) Next i max = a(0) For i = 1 To 29 If a(i) > max Then max = a(i) Next i Print max End Sub 4 请设计如下图所示窗体界面。程序运行时,在选中一个或两个复选框和一个单选按钮时,单击命令按钮,则对文本框中的文本内容做相应的设置。请编写适当的事件过程,完成上述功能。

VB考试题及答案

VB程序设计期末考试题 一、选择题 1 下列常量中,是Integer类型常量的是( C )。 A、123& B、-38844 C、123% D、32768 2 下面选项中()是字符连接运算符. A A、& B、And C、% D、Mod 3 下面关于VB的集成开发环境(IDE)的叙述中,不正确的是( B )。 A、IDE是设计、调试、运行VB程序的工具。 B、用户不能随意关闭IDE中的窗口。 C、"窗体设计" 窗口是用来设计应用程序界面(窗体)的。 D、打开 / 关闭各窗口的命令主要在IDE的"视图"菜单中。 4 len(“vb程序设计”)=( C ) 。 A、 5 B、2 C、 6 D、10 5 表达式 15 Mod 4 + 13 \ 5 * 2 的值是 D A、7 B、0 C、2 D、4 6 赋值语句A=123 + Mid$( “123456”,3,2) 执行后,A=(A)。 A、157 B、12334 C、123 D、"12334" 7 在一个语句内写多条语句时,用来分隔每条语句的符号是(C). A、, B、; C、: D、、 8 将逻辑型数据转换成整型数据时,转换规则是( D )。 A、将True转换为 1 ,将False转换为 0 B、将True转换为 1 ,将False转换为 -1 C、将True转换为 0 ,将False转换为 -1 D、将True转换为 -1 ,将False转换为 0 9 表达式2+3*4^5-SIN(X+1)/2中最先进行的运算是(D).

A、SIN B、4^5 C、3*4 D、x+1 10 如果x=2,则表达式x+1>2 Or sin(x)>0.9 And 3>x+3的值( B )。 A、不能计算 B、 True C、5 D、False 11 随机产生[10,50] 之间整数的正确表达式是( D )。 A、Round( Rnd*50) B、 Int(Rnd*40+10) C、Round( Rnd*51) D、 10+Int(Rnd*41) 12 每建立一个窗体,工程管理器窗口中就会增加一个(C). A、类模块文件 B、工程文件 C、窗体文件 D、程序模块文件 13 INT(100*RND(1))产生的随机整数的闭区间是(B). A、[1,100] B、[0,99] C、[0,100] D、[1,99] 14 下列数据类型中,占用内存最小的是(D). A、Integer B、Single C、Boolean D、Byte 15 VisualBasic是一种()程序设计语言.B A、过程式 B、非过程式 C、机器 D、低级 16 函数Int(10*Rnd)是在(A)范围内的整数. A、[0,9] B、[0,1] C、[1,9] D、[1,10] 17 以下合法的一组Visual Basic用户标识符是 C A、Sum 和 8abc B、a#x 和 Pi C、ForLoop 和 Total D、Const 和 DoWhile

VB考试题库,二级习题(含答案)

V B考试题库,二级习题 (含答案) https://www.doczj.com/doc/3e18626781.html,work Information Technology Company.2020YEAR

VB考试一 1、能够获得一个文本框中被选取文本的内容的属性是______。 A:SelStart B:SelLength C:SelText D:Text 参考答案:C 2、在窗体上画一个文本框,其名称为Text1,为了在程序运行后隐藏该文本框,应当使用的语句为:______。 A:Text1.Enabled = False B:Text1.Hide C:Text1.Clear D:Text1.Visible = False 参考答案:D 3、对于语句 If x=1 Then y=1, 下列说法正确的是____。 A: x=1和y=1 均为赋值语句 B: x=1和y=1 均为关系表达式 C: x=1为赋值语句,y=1为关系表达式 D: x=1为关系表达式,y=1 为赋值语句 参考答案:D 4、以下变量名中,______是不符合Visual Basic的命名规范的。 A:_mnu_Open_234 B:Abc901 C:price_ D:K 参考答案:A 5、MsgBox 函数返回值的类型是__________。 A:数值或字符串 B:字符串 C:变体 D:整型数值 参考答案:D 6、VB一共有设计、运行和中断三种模式,要使用调试工具应该______。 A:进入中断模式 B:进入运行模式 C:进入设计模式 D:不用进入任何模式 参考答案:A 7、设a=6,则执行 x=IIF(a>5,-1,0) 后,x的值为______。 A:-1 B:6 C:0 D:5 参考答案:A 8、可以同时删除字符前导和尾部空白的函数是______。 A:Mid B:Rtrim C:Trim D:Ltrim 参考答案:C 9、以下语句的输出结果是______。 Print Format$("32548.5","000,000.00")

vb考试题及答案

1.下列不是VB常量的是 B 。 A)3.14 B)′Name ′ C)#10/18/2007# D)True 2.确定控件在窗体上位置的属性是 C 。 A)Width 和Height B)Width 和Top C)Top 和Left D)Top 和Height 3.数学表达式1≤X<10表示成正确的VB表达式为 B 。 A)1≤X<10 B)X>=1 And X<10 C) X>=1 Or x<10 D) X>=1 And <10 4. 下面的__ B ___语句可以实现:先在窗体上输出大写字母A,然后在同一行的第10列输出小写字母b。 A)Print "A";Tab(9);"b" B)Print "A";Spc(8);"b" C)Print "A";Space(10);"b" D)Print "A";Tab(8);"b" 5. 下列控件中,不能改变大小的控件是 D 。 A)TextBox B)Label C)Frame D)Timer 6.Visual Basic过程的编写是在 D 中进行的。 A)窗体窗口B)工程资源管理器窗口C)属性窗口D)代码编辑窗口 7. 在Visual Basic中,声明全局变量应该用 D 关键字。 A)Dim B)Private C)Static D)Public 8. 在Visual Basic表达式中,运算符的运算顺序为 A 。 A)算术运算符—>字符串运算符—>关系运算符—>逻辑运算符 B)逻辑运算符—>关系运算符—>字符串运算符—>算术运算符 C)字符串运算符—>算术运算符—>关系运算符—>逻辑运算符 D)关系运算符—>逻辑运算符—>算术运算符—>字符串运算符 9. 下列属于非法调用的函数是 A 。 A)sqr(-5) B)Sgn(-5) C)Exp(-5) D)Int(-5) 10. 下列能够正确输出”a=8”形式的语句是 B 。 A)print a=3+5 B)pirnt “a=”;3+5 C)print “a=3+5”D)print a=;3+5 11. 下列符号中,可以用作VB变量名的是 C 。 A)x.y.z B)3xyz C)x_yz D)Integer 12. 可以删除字符串两端空格的函数是 A 。 A)Trim B)Rtrim C)Ltrim D)Mid 13. 函数Int(Rnd*80)+1是在 D 范围内产生随机整数。 A)[0,80] B)[0,79] C)[1,79] D)[1,80]

vb试题及答案

VB试卷 一、单项选择题(每题2分,共40分) 1. 窗体的标题栏显示内容由窗体对象的属性决定。 A) BackColor B)BackStyle C)Text D)Caption 2. 窗体的示意图标可用属性来设置。 A) Picture B) Image C) Icon D) MouseIcon 3. 窗体的控制菜单的有无由窗体对象的属性决定。 A) ControlBox B) MinButton C) MaxButton D) BorderStyle 4. 若要取消窗体的最大化功能,则可设置属性为False来实现。 A) ControlBox B) MinButton C) MaxButton D) Enabled 5. 以下4个选项,不属于VB的工作模式。 A) 编译 B) 设计 C) 运行 D) 中断 6. 窗体的边框样式由窗体对象的属性来设置。 A) BackStyle B) BorderStyle C) WindowState D) FillStyle 7. 若要以程序代码方式设置在窗体中显示文本的字体大小,则可用窗体对象的属性来实现。 A) FontName B) Font C) FontSize D) FontBold 8. 命令按钮的标题文字由属性来设置。 A) Text B) Caption C) Name D) (名称) 9. VB是面向对象的程序设计,以下4个选项,不属于面向对象的三要素。 A) 变量 B) 属性 C) 事件 D) 方法 10. 若要将某命令按钮设置为默认命令按钮,可设置属性为True来实现。 A) Value B) Cancel C) Default D) Enabled 11. 若要使命令按钮不可见,可设置属性为False来实现。 A) Value B) Enabled C) Visible D) Cancel 12. 运行程序时,系统自动执行窗体的事件。 A) load B) click C) unload D) GotFocus 13. 若要设置文本框最大可接收的字符数,可通过属性来实现。 A) MultiLine B) Length C) Max D) MaxLength 14. 若要使某命令按钮获得控制焦点,可使用方法来设置。 A) Refresh B) SetFocus C) GotFocus D) Value 15. 若要使命令钮可响应事件,可通过设置属性的取值来实现。 A) Visible B) Enabled C) Default D) Value 16. 在运行时,若要调用某命令按钮的Click事件过程,可设置该命令按钮对象的 属性为True来实现。 A) Enabled B) Value C) Default D) Cancel 17. 标签框的边框,由属性的设置值决定。

vb题库及答案

| 最新VB题库及答案 一、选择题 第1部分 1、在窗体(名称为Form1)上画一个名称为Text1的文本框和一个名称为Command1的命令按钮,然后编写一个事件过程。程序运行后,如果在文本框中输入一个字符,则把命令按钮的标题设置为“计算机等级考试”。以下能实现上述操作的事件过程是 A、Private Sub Text1_Change() = "计算机等级考试" End Sub ] B、Private Sub Command1_Click() Caption = "计算机等级考试" End Sub C、Private Sub Form_Click() = "计算机等级考试" End Sub D、Private Sub Command1_Click() = "计算机等级考试" { End Sub 2、在一行内写多条语句时,每个语句之间用()符号分隔。 A、 , B、: C、. D、; 3、下面()是合法的变量名。 A、X_YZ B、123ABC C、INTEGER D、X-Y ] 4、下面()是合法的字符常量。 A、 ABC$ B、“ABC” C、‘ABC’ D、 ABC 5、表达式16/4 - 2^5*8 MOD 5\2的值为()。 A、14 B、 4 C、20 D、2 6、设a=”MicrosoftVisualBasic”,则以下使变量的b值为”VisualBasic”的语句是 A、b=Left(a,10) B、b=Mid(a,10) — C、b=Right(a,10) D、b=Mid(a,11,10) 7、设a="a",b="b",c="c",d="d",执行语句x = IIf((a < b) Or (c > d), "A",

vb经典题目及答案

1、在考生文件夹下有工程文件wy7、vbp及窗体文件wy7、frm,该程序就是不完整的,请在有?号的地方填入正确的程序代码,然后删除?及所有注释符号(即 '号),但不能修改其它部分。修改后的程序文件都保存,存盘时不得修改文件夹与文件名。 本题描述如下: 在窗体上有一个名为Text1的文本框,有三个命令按钮,名称分别就是C1、C2与C3,标题分别就是"读入"、"加密"与"存盘"。要求程序运行后,点击"读入"按钮,将文本文件in7、txt(该文件在考生文件夹下)中的文本信息读入文本框Text1中;点击"加密"按钮将Text1中的英文字母加密转换,并将转换后的结果显示到Text1中。转换方式为转换成该字母对应字母表中后两个位置的字母。例如,转换前的字母就是"a",则转换后的就是"c",转换前就是"E",转换后就是"G";点击"存盘"按钮, 则将转换后的文本框中的文本保存到out7、txt 文件中(该文件保存到考生文件夹下)。 Private Sub C1_Click() Dim strinfo As String Open "in7、txt" For Input As 1 Input #1, strinfo Close #1 Text1、Text = strinfo End Sub Private Sub C2_Click() Dim strchange As String Dim i As Integer For i = 1 To Len(Text1、Text) strchange = strchange + Chr(Asc(Mid(Text1、Text, i, 1)) + 2) Next Text1、Text = strchange End Sub Private Sub C3_Click() Open "out7、txt" For Output As 1 Print #1, Text1、Text Close #1 End Sub 2、(1)在考生文件夹下有工程文件wy5、vbp及窗体文件wy5、frm,该程序就是不完整的,请在有?号的地方填入正确内容,然后删除?及所有注释符(即'号),但不能修改其它部分。存盘时不得改变文件名与文件夹。本题描述如下: 在窗口中有一个RichText文本框控件(名称为rtx1)与一个文本框控件(名称为Text1),两个命令按钮,名称 分别为Command1与Command2,标题分别为"加入WY01、TXT"、"统计字符个数"。要求程序运行后,单击command1将考生文件夹下的wy01、txt的内容显示到rtx1中;单击"统计字符个数"按钮统计Text1中有多少个字符,将结果显示在Text1中。

vb试题及答案

一、选择题(1-30 题每小题1分,共30分,31-45题每小题2分,共30分,总计60分)要使窗体Form1的标题栏中显示“正在复制文件…”,正确的语句是:a A.Form1.Caption=“正在复制文件…” B.Form1.Title=“正在复制文件…” C.Form1.Text=“正在复制文件…” D.Form1.名称=“正在复制文件…” 如果要求设置定时器时间间隔为1秒钟,那么它的Interval属性值应该等于:a A.1000 B.100 C.10 D.1 3、下列关于控件的基本操作中,错误的是 A)当控件处于活动状态时,可以对控件进行缩放 B) 在设计阶段不能移动控件 C) Visual Basic 6.0 允许对画好的控件进行复制和删除 D) 可以通过属性窗口改变控件的位置和大小 4、用Visual Basic 开发应用程序的一般步骤有:①设置窗体和控件的属性、②编写代码、③建立用户界面,其中正确的顺序是: A) ①②③B) ①③②C) ③②①D) ③①② 5、为使文本框只能显示不能输入,即只读,应设置文本框的属性是:c A.MaxLength设置为0 B.Cancel设置为True C.Locked设置为True D.Read设置为True 6、InputBox函数返回值的类型为。B A.数值B.字符串C.变体 D.数值或字符串(视输入的数据而定) 7、为了把焦点移到某个指定的控件,所使用的方法是:A A.SetFocus B.Visible C.ReFresh D.GetFocus 8、函数String(3,”str”)的功能是:b A.把数值型数据转换成字符串 B.返回有3个字符串组成的字符串 C.从字符串中第3个字符 D.从字符串中第3个字符的位置开始取字符串 9、双击窗体中的对象后,Visual Basic将显示的窗口是:c A.项目(工程)窗口B.工具箱C.代码窗口D.属性窗口 10、用于获得字符串s最左边4个字符的函数是:a A.Left(s,4) B.Left(1,4) C.LeftStr(s) D.LeftStr(3,4) 11、以下程序段的输出结果是:d a=Sqr(3) b=Sqr(2) c=a>b Print c A.-1 B.0 C.False D.True 12、用下面语句定义的数组的元素个数是:c Dim A (-4 to 6) As Integer A.6 B.7 C.11 D.9

Vb上机实验答案

第一题 1.制作如图所示窗体界面。(用真实的姓名、班级及学号) 2.使时间每隔1秒刷新一次 3.单击“最大值”命令按钮时,算出通过键盘输入的5个数的最大 值 4.在列表框中输入20、22、24、26、28 Private Sub Command1_Click() Dim a(1 To 5) As Integer For i = 1 To 5 a(i) = InputBox("please input a number") Next i mmax = a(1) For i = 1 To 5 If a(i) > mmax Then mmax = a(i) End If Next i MsgBox mmax End Sub Private Sub Timer1_Timer() Label2.Caption = Time End Sub 第二题 1.两个文本框里输入两个数字从而确定一个范围。 2.单击“计算”按钮求出这个范围中能被3或5整除的数的平方和, 结果显示在label3中。 https://www.doczj.com/doc/3e18626781.html,bel3的背景色每隔1.5秒蓝红交替。

Private Sub Command1_Click() Dim a As Integer Dim b As Integer a = Text1.Text b = Text2.Text s = 0 For i = a To b If a Mod 3 = 0 Or b Mod 5 = 0 Then Label3.Caption = Label3.Caption & i & "," s = s + i * i End If Next i Label3.Caption = s End Sub Private Sub Timer1_Timer() If Label3.BackColor = vbRed Then Label3.BackColor = vbBlue Else Label3.BackColor = vbRed End If End Sub 第三题 1、单击按钮,在文本框中显示1到终值的所有整数的平方和 2、单击生成列表按钮,在列表框中显示1到终值之间的所有整数 Private Sub Command1_Click()

VB上机考试习题以及答案

VB上机考试 1、利用随机函数产生25个100到999之间的整数,构成5 5的矩阵,输出该矩阵。Dim a(1 To 5, 1 To 5) Private Sub Form_Click() Ran domize For i = 1 To 5 Forj = 1 To 5 a(i, j) = Int(Rnd * (999 - 100 + 1) + 100) Print a(i, j); Next j Print Next i End Sub 2、利用随机函数产生25个10到99之间的整数,求其平均值(要求保留3位小数,第4 位四舍五入)。Private Sub Form_Click() For i = 1 To 25 a = In t(R nd * (99 - 10 + 1) + 10) Print a; s = s + a Next i Print Avg = s / 25 Print Avg End Sub 3、在窗体上按下鼠标的右键,记录其坐标。 Private Sub Form_Load() Label1.BorderStyle = 1 Label1.Alig nment = 2 End Sub Private Sub Form_MouseDow n(Button As In teger, Shift As In teger, X As Si ngle, Y As Si ngle) If Butt on = 2 The n Label1.C apti on = X & "," & Y End If End Sub 4、利用随机函数产生25个10到99之间的整数,按从小到大的顺序显示。Dim a(1

VB考试题及答案

1、VB应用程序中可以包括三种模块:( 窗体模块)、( 标准模块) 和类模块。 2、下列过程不能在标准模块中定义的是( A )。 A、事件过程 B、子过程 C、函数过程 D、公共过程 3、以下叙述中错误的是D A、如果过程被定义为Static类型,则该过程中的局部变量都是Static类型 B、Sub过程中不能嵌套定义Sub过程 C、Sub过程中可以嵌套调用Sub过程 D、事件过程可以像通用过程一样由用户定义过程名 2、在某一窗体模块中定义的全局级过程,若被该模块外的模块所调用,必须在该过程名前加上( 窗体名称)。 2、自定义的过程有两种形式:_Sub_和_Function_。 3、用于退出过程的语句是( D )。 A、Exit B、Exit For C、Exit Do D、Exit Sub 4、在过程的参数列表中列入__ Optional __关键字,就可以指定过程的参数为可选的。 5、如果使用Call关键字来调用一个需要参数的过程,参数就必须要加上__括号__。 1、在窗体代码中有以下事件过程的声明,其中Private表示( B ) Private Sub lblAbc_Change() …… End Sub A、此过程可以被任何其它过程调用 B、此过程只可以被本窗体模块中的其它过程调用 C、此过程不可以被其它过程调用 D、此过程只可以被本工程中的其它过程调用 9、假定已定义了一个过程Sub Add(a As Single,b As Single),则正确的调用语句是( A )。 A、Add 12,5 B、Call(2*x,Add(1.57)) C、Call Add x,y D、Call Add(12,12,x) 10、要想在过程调用后返回两个结果,下面的过程定义语句合法的是( C )。 A、Sub Procl(ByVal,n,ByVal m) B、Sub Procl(n,ByVal m) C、Sub Procl(n,m) D、Sub Procl(ByVal n,m) 6、写出单击命令按钮Command1时的窗体显示结果。 Public Sub Proc(ByRef n As Integer,ByVal m As Integer) n=n Mod 10 m=m\10 End Sub Private Sub Command1_Click() Dim x as Integer,y As Integer x=15:y=30 Call Proc(x,y) Print x;y

相关主题
文本预览
相关文档 最新文档