计算机专业第二次月考试题
精选文库
计算机专业第二次月考试卷
一、选择题(本大题共10小题,每小题2分,共20分) Op tio n Base 1 Dim i As In teger
1 .在Visual Basic 中,Print Int (35*Rnd )+n 产生的随机数的范围是 则n 是 A. 10 B. 20 C. 30 D. 35 2.在Visual Basic 中,下列可作为 Visual Basic 变量名的是 A. File name B. Val C. X%D D. Print 10 至 44 (含 10 及 44),
Dim j As In teger
3.在Visual Basic 中,下列语句用来设置窗体中文本框(名称 Text1 )的属性,其中在运行时 不能正确操作的语句是 A. Text1.Text="Text Test" B. https://www.360docs.net/doc/5f5918478.html,="Text Test"
C. Text1.E nabled = False
D. Text1.Visible = False 4.在Visual Basic 中,下列运算符优先级最高的是 A. + B. * C. > .And
a = Array(2, 4, 7, 9, 3, 6, 20, 11) For i = 1 To 7 For j = i + 1 To 8 If a(i) > a(j) Then a(i) = a(i) + a(j) a(j) = a(i) - a(j)
End If Next j Next i Fori = 1 To 8
Print a(i); 5.执行下面 Visual Basic 程序后,结果是哪个选项 Next i Fori = 1 To 6 A. a(i)=a(j) B. a(i) = a(i) - a(j) If i Mod 2 = 0 The n Prin t "#";
7.
C. a(j)=a(i)-a(j)
执行下面Visual Basic
D. Exit For
程序后,s=s+1语句被执行了多少次
Else Dim s As In teger
Prin t
"*"; End If Fori = 1 To 10 Next i Forj = 0 To i- 1
A. ######
C. *#*#*# .#*#*#*
Next j 6.下面的 Visual Basic 程序是对数组a 中的元素按升序排列,程序中空白位置应该填下列选
Next i 项中的哪一个
A. 0
B. 10
.55
D. 66
Case Else: s = 100
j = 0: s = 0
8.执行下面Visual Basic 程序,数组a 中的数字50所在位置的下标是....( End Select Op tion Base 1
Print s Private Sub Comma nd1_Click() A. 1
B. 2
二、判断题(本大题
C. 3
D. 100
5小题,每小题2分,共10分。)
Dim k As In teger
1. 在 Visual Basic 中, Dim t As In teger
2. 在 Visual Basic 中, Dim w As In teger
3. 在 Visual Basic 中, Dim m As In teger
4. 在 Visual Basic
中, a = Array(3, 56, 8, 10, 89, 94, 78, 82, 20, 50, 100) 5.
在 Visual Basic 中,
Dim i As In teger 对顺序文件既有读的操作语句,也有写的操作语句。 (
窗体appearanee 属性的功能是返回或设置对象的边框样式。 定时器控件在运行时是可见的。
(
)
窗体的move 方法中,参数left 、width 、height 者E 不可以省略。(
)
form1.visible=true ,这时窗体不可见。(
)
m = UBoun d(a) k = m / 2 三、填空题(本大题共5小题,每小题2分,共10分。)
1. Visual Basic 的算术表达式 4 / 3 Mod 3 * 2 + 2 的结果是
Fori = 1 To k
w = a(i): a(i) = a(m - i + 1): a(m - i + 1) = w Next i
End Sub
A. 1
B. 2
C. 3
D. 5
9.在Visual Basic 中,关于控件及窗体说法不正确的是
A.任何一个控件都有名称
B.任何一个控件都有属性
C.任何一个控件都有单击事件
D.控件是对象,窗体也是对象 10.执行下面Visual Basic 程序,输入
a
的值为
10
,最后输出
s
的值是?…
(
2.
在Visual Basic 中,将文本框的scrollbar
的属性设置为2,但没有垂直滚动条显示,原因
是没有将 _________________________ 属性设置为True o
3.
在Visual Basic
中,有以下的循环:
X=1
Do while x<=5
X _________________________________ Loop
程序运行后,要求执行
3次循环体,请填空。
4. 在Visual Basic 中,根据数组占用内存方式的不同, 将数组分为常规数组和 ________________ o
5.
在Visual Basic
中,要将某一控件从
tab 键顺序中删除,只要将其
tabstop 属性设置
成 ________________________ o
四、程序分析(本大题共1小题,每小题5分,共5分)
阅读下面的 Visual Basic
程序,程序运行后 s 的值是 _________________________
Dim a As In teger Op ti on Base 0
Dim s As In teger Private Sub Comma nd1_Click()
a = Inp utBox("a=")
Dim a(4) As In teger Select Case a Mod 2 Dim i As In teger Case 1: s = 1 Dim j As In teger Case 2: s = 10 Dim w As In teger Case 3: s = 11 Dim s As In teger
For i = 1 To 100 fu=k
w = lnt(6 * Rnd) End Fun cti on
If w = 2 The n a(j) = w
s = s + a(j)
窗体启动后单击命令按钮,输出w的值为________________
2 .分析下面Visual Basic 程序段。窗体中有一命令按钮(名称为Comma nd)
Op tio n Base 1
Private Sub Comma nd1_Click()
Else a = Array(23, 24, 17, 8, 11, 15, 16, 13)
Dim i As In teger End If Dim num As In teger
If j = 5 The n Exit For Dim k As In teger Next i Dim j As In teger
Print s Dim flag As In teger
End Sub
五、写出下列程序的运行结果(本大题共2小题,每小题5分,共15 分)
1 .分析下面Visual Basic 程序段。窗体中有一命令按钮(名称为Comma nd)!。num = 0
Fori = 1 To 8 flag = 0
Private Sub Comma nd1_Click() k = In t(Sqr(a(i))) Dim a(3) As In teger Forj = 2 To k
Dim i As In teger, w As In teger If a(i) Mod j = 0 Then flag = 1
Next j Fori = 0 To 3 If flag = 0 Then num = num + a(i) a(i) = i Next i Next i Print num
Fori = 0 To 3
w = w + fu(a(i)) Next i
Print w
End Sub
End Sub
窗体启动后单击命令按钮,输出语句Print num执行结果是__________ 3.在窗体上有一个名称为Comma nd的命令按钮,然后编写如下事件过程:
Op tio n Base 1
Private Sub Comma nd1_Click()
Dim a As Varia nt
Private Function fu(k As In teger) a = Array(5, 6, 7, 8, 9) Sum = 0
Fori = 1 To 5
精选文库
2.如图所示,窗体有两个框架,左边框架中有三个单选按钮(名称分别为Option1 , Option2 和Option3 ),
单选按钮分别设置了标题为小学、初中、高中;右边的框架中是一个列表框(名 称为List1 );两个框架中间是命令按钮(标题为存放结果,名称为
Comma nd ),命令按钮功
能:单击命令按钮,清除列表框中的内容,然后将选中单选按钮的标题放入列表框中。
程序中有两处错误,分布在两行,请将完整的错误行和相应的正确行写在答题纸横线上。 (不能改变程序行数,不能增加函数)
End Sub
程序运行后,单击命令按钮,则窗体上显示的内容为:
六、Visual Basic 程序改错(本大题共2小题,每个错误5分,共20分,每个程序有两个错误行, 请在答题纸上写出错误行代码和对应的正确代码,改对一处得一处分,改错不减分。注:要把 整行写完整)
1 .有数组:
s = Array ("a42", "b3c56", "de7fg", "hi", "jk35km n")
统计数组s 的各个元素中含有数字字符个数, 把结果放到数组b 相应元素中,如上述数组s ,
当程序运行后b 中各元素的值分别为:2,3,1,0,2 。程序中有两处错误,请按要求改正。程序如 下:(两个
数组的下标都是从
1开始,程序中定义的每个变量都用到
,程序中只能用变量
total
统计数组中每个元素含数字字符个数)
s = Array("a42", "b3c56", "de7fg", "hi", "jk35k mn") Dim b(5) As In teger Dim total As In teger
Dim i As In teger Dim j As In teger Private Sub Comma nd1_Click()
Dim s As Stri ng Fori = 1 To 5 List1.Clear b(i) = 0
s =""
For j = 1 To Le n(s(i))
Select Case 1
If Mid(s(i), j, 1) >= "0" A nd Mid(s(i), j, 1) <= "9" The n total = total + b(i) Case Op tio n1.Value
Next j s = s + Op ti on 1.Ca pti on b(i) = total Case Op ti on 2.Value
Next i s = s + Op ti on 2.Ca pti on Fori = 1 To 5
Case Op ti on 3.Value
Print b(i); s = s + Op ti on 3.Ca pti on Next i
End Select
Sum = Sum + a(i) Next i p = Sum / 5 For i = 1 To 5
If a(i) > p The n Print a(i); Next i
Listl.Text = s If (c < "0" Or c > "9") And flag = 1 The n End Sub flag = 0: num = 0
七、程序填空(本大题共4个空,每空5分,共20分,按程序要求在答题纸上填入相应的内容, 使程
序完整正确)
End If
1. (Visual Basic 试题)下面程序是从键盘输入少于20个字符的字符串,然后对字符串从
左端进行处理。处理方法:把字符串中后跟“#”的数字放入数组a中,如果是数字但后面没有“#”则不存放。如输入的字符串为“ 12 #a2bc3#d45#6e7” ,则12、3、45分别存放到数组a的Loop
Fori = 0 Toj- 1 Print a(i);
前三个元素中。请填空。Next i
Op ti on Base 0 End Sub
Private Sub Comma nd1_Click()
Dim s As Stri ng
2、(Visual Basic 试题)
Dim c As Stri ng
Dim i As In teger
Dim j As In teger
Dim a(10) As In teger
Dim num As In teger
Dim w As In teger
Dim flag As In teger ' 标志:为0表示前一个字符非数字,为
字符为数字
1表示前一num = 0: i = 1: flag = 0: j = 0
s = Inp utBox("s=")
w = Len(s)
Do While i <= w
c = Mid(s, i, 1)
If c >= "0" A nd c <= "9" Then
num = num * 10 + Val(c): (1)
End If
If flag = 1 And c = "#" Then
(2) : j = j + 1: flag = 0: num = 0
End If
333
开始
組台框
窗体中有一文本框(名称Text1),一组合框(名称Combo1已添加5个条目),一滚动条(名称Hs1,min和max分别为1和5),一定时器控件(名称Timer1),定时器的Enabled属性初始为False , Interval 属性值1000(1秒),一命令按钮(标题为开始,名称Command1)程序功能:
(1)开始命令按钮功能:启动定时器工作;(2)定时器Timer1事件功能:一是清空文本框,
二是在文本框中显示组合框中选中的数字,选中数字几,就在文本框中显示几个该数字,如选中3,则在文本框中显示3个3,三是把滚动条的Value值改为组合框中选定的值,四是把定时
4、
器的Timerl 事件触发时间改为与所选中的组合框的值一致的秒数。 不完整的空白位置请写出正
姓名 分数
确的内容。 Private Sub Comma nd1_Click() Timerl.E nabled = True
3、 End Sub
4、
5、 P rivate Sub Timer1_Timer() 四、程序分析题: Dim i As In teger Dim k As In teger Text1.Text ="" 五、
1 运行结果题: k = Val(⑶ )
Fori = 1 To k
Text1.Text = Text1.Text + Combo1.Text Next i
Hs1.Value = Combo1.Text
(4) = Combo1.Text * 1000
End Sub
答题卡
一、 选择题:
1-5 ______
6-10 _______ 二、 判断题:
2、 ____________
3、 ____________
六、改错题:
错误行 ______ 正确行 ______ 错误行 ______ 正确行 ______ 错误行 ______ 正确行 ______ 错误行 ______ 正确行 ______ 程序填空题:
1
、
2
、
3
、
4
、 七、
1、 2
、 3、
1-5
填空题:
1
、
2
、