相关试卷
-
1、有如下程序段,运行时程序出现如下错误提示,出错语句的位置是 ( )
Private Sub Command1_Click()
Dim i As Integer
Dim a(10)As Integer ‘①
For i=1 To 10 ‘②
a(i)=Rnd* 100 ‘③
Next i
Label1.Caption=Str(a(i)) ‘④
End Sub
A、① B、② C、③ D、④ -
2、运行如下Visual Basic程序,单击命令按钮Command1,出现如图所示的出错信息。
Private Sub Command1_Click()
Dim a As Integer,b As Integer
a=10 ‘①
b=20 ‘②
Text1.Text=“a+b=”+Val(a+b) ‘③
End Sub ‘④
发生“类型不匹配”错误时所执行的语句是( )
A、① B、② C、③ D、④ -
3、下列Visual Basic表达式中,与表达式Not x>1功能相同的是( )A、x<1 B、x>1 C、x>=1 D、x<=1
-
4、在Visual Basic中,从字符串“Good morning”中截取“morning”的表达式是( )A、Mid(“Good morning”,6,7) B、Mid(Good morning,6,7) C、Mid(“Good morning”,5,7) D、Mid(“Good morning”,7,7)
-
5、用变量存储诗朗诵比赛中选手的平均得分(保留2位小数),则变量的数据类型应说明为( )A、Integer B、Long C、Single D、Date
-
6、小明编写了一个数据插入程序。程序输入一个数字,将该数字插入一列有序数据:-5,3,4,12,20,45,70,并使数据序列保持有序。设计的算法是从前往后找位置插入。
Private Sub Command1_Click()
Dim a(1 To 8) As Integer
Dim n, i, j, x As Integer
List1.Clear
List2.Clear
a(1) = -5: a(2) = 3: a(3) = 4: a(4) = 12: a(5) = 20: a(6) = 45: a(7) = 70
For j = 1 To 7
List1.AddItem Str(a(j))
Next j
x = Val(Text1.Text)
i = 1
Do While x > a(i) And i < 8 ’找x的插入位置
①
Loop
For j = 8 To i + 1 Step -1 ’移动数据
②
Next j
a(i) = x
For j = 1 To 8
List2.AddItem Str(a(j))
Next j
Label1.Caption = “插入的位置是” &Str(i)
End Sub
(1)、代码“List1.Clear”中的Clear是。(单选。填字母:A .属性名/B .事件名/C .方法名)(2)、为实现程序功能。请在划线处填入合适的代码。①处填入的代码为。
②处填入的代码为。
-
7、竞选班长。编号分别为1、2、3、4、5的五位候选人参加班长竞选,现要设计一个计票程序,根据回收的选票信息统计各位候选人的得票数,得票数最多的被选为班长,并输出班长的编号。选票信息为一个数字序列,由每张选票的投票结果构成,如某选票序列为101233303,其含义见如下表所示。
选票序列
1
0
1
2
3
3
3
0
3
含义
第1张选票投给1号
第2张选票弃权
第3张选票投给1号
第4张选票投给2号
第5张选票投给3号
第6张选票投给3号
第7张选票投给3号
第8张选票弃权
第9张选票投给3号
备注:选票序列101233303,序列中的数字i,表示投票给编号为i的人,即编号为i的人得1票,其中数字0表示不投给任何人,即为弃权。表中选票序列的投票结果为:1号得2票,2号得1票,3号4得票,4号、5号均为0票(没人投),所以3号得票数最高,被选为班长。
程序运行时,在文本框Text1中输入选票信息,单击“计算”按钮Command1后,被选为班长的编号显示在文本框Text2中。程序运行效果如图所示。

实现上述功能的VB程序如下,请在划线处填入合适的代码。
Private Sub Command1_Click()
Dim a(1 To 5)As Integer
‘数组元素a(1)~a(5)依次存放编号为1~5的五位候选人的得票数
Dim st As String, i As Integer, j As Integer, n As Integer
Dim ans As Integer ‘变量ans存放被选为班长的人的编号
Dim max As Integer ‘变量max存放最多的得票数
st=Text1.Text
For i=1 To 5
a(i)=0
Next i
For i=1 To 5
For j=1 To n
IfThen
a(i)=a(i)+1
Next j
Next i
max=0
For i=1 To 5
If a(i)>max Then
max=a(i):ans=i
Next i
End Sub
-
8、有一个数组data存放了n个数据,现从中删除了一个元素,其余的元素依次向前递补(假设删除的是第3个元素,则要将第4个元素移到第3个元素处,第5个元素移到第4个元素处,以此类推),然后输出数组内容。程序输入要删除数的位置,点击“删除”按钮后删除指定数,并把剩余的数字依次输出到List2中,程序如图所示。
Dim data(10) As Integer ‘①
Dim n As Integer ‘n表示总元素个数
Private Sub Command1_Click()
Dim t As Integer
t = Val(Text1.Text)
For i = t To n-1
②
Next i
n = n - 1
For i = 1 To n
③
Next i
End Sub
Private Sub Form_Load()
Dim i As Integer
n = 10
For i = 1 To n
data(i) = i * 2
List1.AddItem Str(data(i))
Next i
End Sub
(1)、与①处语句功能一样的是(填字母)(A .Dim data(0 To 10) As Integer/B .Dim data(1 To 10) As Integer)。(2)、为实现程序功能,请在划线处填入合适的代码。②处的代码为。
③处的代码为。
-
9、任意一个大于或等于4的偶数,都可以用两个素数之和表示,这就是哥德巴赫猜想。如:4=2+2,6=3+3,8=3+5, 10=5+5,12=5+7,98=19+79。
编写一个验证哥德巴赫猜想的VB程序:程序运行时,在文本框Text1中输入一个大于或等于4的偶数,单击“验证”按钮Command1后,如果哥德巴赫猜想验证成功,则在文本框Text2中显示“Yes”,并在列表框List1中显示用两个素数表示该偶数的等式,否则显示“No”。程序运行效果如图所示。

实现上述功能的VB代码如下,但加框处代码有错,请改正。
Function judge(x As Integer)As Boolean
‘函数judge的功能是判断整数x是不是素数,若是素数则返回True,否则返回False
Dim j As Integer
judge=True
j=2
Do While j<=x-1 And judge=True
If x Mod j=0 Then
judge=False
Else
j=j+1
End If
Loop
End Function
Private Sub Command1_Click()
Dim n As Integer, p As Integer, q As Integer, flag As Boolean
n=Val(Text1.Text)
p=1
flag=False
Do While
And p<n ‘p=p+1
‘If judge(p)And judge(q)Then
Text2.Text=“Yes”
flag=True
List1.AddItem Str(n)+“=”+Str(p)+“+”+Str(q)
End If
Loop
If flag=False Then
Text2.Text=“No”
End Sub
-
10、有10个数据23、15、51、36、78、47、39、9、88、96依次存放在数组a(1 To 10)中,使用如下程序段找出最大值:
max=a(1)
For i=2 To 10
Next i
当虚线框内的语句刚好执行完第6次后(此时循环变量i的值为7),变量max的值是( )
A、23 B、39 C、78 D、96 -
11、如下VB程序段:
x=Text1.Text
p=0
For i=1 to Len(x)
If Mid(x,i,1)=“a” Then p=p+1
Next i
Print p
若程序运行时,在文本框Text1中键入“Are you happy”,则运行结果是( )
A、0 B、1 C、2 D、11 -
12、数组元素值a(1)=2 : a(2)=8 : a(3)=3 : a(4)=4 : a(5)=5 :a(6)=6 : a(7)=1 : a(8)=7 : a(9)=9。
m =1: k = 1
For i = 2 To 9
If a(i) > a(i-1) Then
k = k + 1
If k > m Then m = k
Else
k = 1
End If
Next i
Text1.Text = Str(m)
该程序段运行后,文本框Text1中显示的内容是( )
A、4 B、6 C、8 D、9 -
13、以下程序运行后,s的值为( )
Dim i As Integer, s As String
i = 0
Do While i < 5
s = Str(i) + s
i = i + 1
Loop
A、“01234” B、“12345” C、“54321” D、“43210” -
14、已知字符串变量x的值是“H”,则VB表达式Chr(Asc(x)+1)的值是(已知字符“A”的ASCII码是65)( )A、“I” B、“G” C、72 D、74
-
15、在Visual Basic程序中,设x=389,能得到其百位数字“3”的表达式是( )A、Int(x/10)*10 B、Int(x/100)*100 C、x-Int(x/10)*10 D、Int(x/100)
-
16、模拟剪刀石头布的游戏,用1~3这3个数分别代表剪刀、石头、布这三种情况,使用Rnd随机函数可以表示为( )A、Int(Rnd(3)+1) B、Int(Rnd*2+1) C、Int(Rnd(2)+1) D、Int(Rnd*3+1)
-
17、在Visual Basic中,有如下程序:
Private Sub Command1_Click()
Dim a As Integer,b As Integer,c As Integer
Dim d As Integer
a=Val(Text1.Text):b=Val(Text2.Text):c=Val(Text3.Text)
d=min(a,b)+min(b,c)
Text4.Text=Str(d)
End Sub
Function min(x As Integer,y As Integer)As Integer
If x<y Then min=x Else min=y
End Function
运行该程序,在文本框Text1、文本框Text2、文本框Text3中分别输入2、-5、6后,单击命令按钮Command1,文本框Text4中显示的是( )
A、-10 B、-5 C、2 D、6 -
18、有如下VB程序段:
Dim i As Integer, Sum As Integer
Dim a(1 To 6) As Integer, b(1 To 6) As Integer
Sum = 0
a(6) = 18: a(5) = 7: b(6) = 14: b(5) = 16
For i = 4 To 1 Step -1
a(i) = a(i+2)-a(i+1)
b(i) = b(i+2)-a(i)
If b(i) Mod 3 = 0 Then Sum = Sum + b(i)
Next i
Textl .Text = Str(Sum)
该程序段运行后,文本框text1中显示的内容是( )
A、39 B、30 C、-9 D、12 -
19、用VB模拟设计某软件的登录界面,如图所示,当鼠标单击“<请输入账号>”所在的文本框Text1时,文字内容消失。则此事件处理的过程名应该是( )
A、登录窗口_Click B、Text1_KeyPress C、Command1_Click D、Text1_Click -
20、有如下程序:
Private Sub Command1_Click()
Dim a(5) as Integer
Dim n as Integer, i as Integer
n = Val(Text1.Text)
i = 0
a(1) = 1
a(2) = 1
For i = 3 To n
a(i) = a(i-1) + a(i-2)
Next i
Label1.Caption = a(i)
End Sub
若在Text1中输入5,则点击按钮后的运行结果为( )
A、Label1中输出5 B、Label1中输出10 C、报“下标越界”错误 D、Label1中无内容