内容正文:
编写说明:内蒙古自治区对口招生《计算机类考纲百套卷》,依据《2019年内蒙古自治区高等职业院校对口招收中等职业学校毕业生计算机类专业课综合考试指导纲要》编写。本专辑涵盖四门课程,且每门课程均采用三阶递进式训练体系:基础层(具象化支架)拆解考点为微目标,紧扣考纲“掌握”“理解”要求编写考点训练卷;巩固层(关联性支架)强化知识交叉与场景关联,按考纲专题编专题训练卷;应用层(引导性支架)聚焦真题突破,结合知识模块与教材编写课程综合卷。
本试卷是第5卷,为考点训练卷,按《Visual Basic程序设计》范围和要求编写。具体内容为:数据输出,常用基本语句,利用文本框进行数据输入,使用对话框实现数据的输入和输出。
内蒙古对口招生《计算机类考纲百套卷》 第5卷
《Visual Basic程序设计》
顺序结构 考点训练卷
考试时间60分钟 满分100分
班级 姓名 学号 成绩
一、单项选择题(本大题共30小题,每题2分,共60分)
1. 分析以下代码片段,最终窗体上显示的输出是______。
Private Sub Form_Click()
Dim a As Integer, b As Integer
a = 5: b = 3
a = b
b = a
Print a; b
End Sub
A. 5 3
B. 3 5
C. 3 3
D. 5 5
【答案】C
【解析】a=5,b=3,执行a=b后a=3,再执行b=a后b=3(此时a的值已是3)。Print a;b输出3 3。注意赋值是顺序执行的,右侧先求值再赋给左侧变量。
2. 分析以下代码,Print方法的输出结果是______。
Private Sub Form_Click()
Dim s As String
s = "ABC"
Print s; "DEF"; s
End Sub
A. ABCDEFABC
B. ABC DEF ABC
C. ABCDEF ABC
D. 程序出错
【答案】A
【解析】Print方法用分号(;)紧凑输出时不自动插入空格。s="ABC",分号紧凑输出s、"DEF"、s,结果为ABCDEFABC(无额外空格)。字符串之间用分号不会有空格。
3. 分析以下代码片段,变量x的最终值是______。
Dim x As Integer
x = 10
x = x + 5
x = x * 2
Print x
A. 10
B. 15
C. 30
D. 40
【答案】C
【解析】x=10,x=x+5=15,x=x*2=30。Print x输出30。注意赋值号右侧表达式先求值,结果再赋给左侧变量。
4. 分析以下代码,在窗体中的输出是______。
Private Sub Form_Click()
Dim a As Integer, b As Integer
a = 7: b = 2
Print a \ b, a Mod b
End Sub
A. 3 1
B. 3.5 1
C. 3 2
D. 出错
【答案】A
【解析】\是整除运算符,7\2=3(舍去小数部分)。Mod是求余数运算符,7 Mod 2=1。Print a\b,a Mod b输出3 1(逗号分隔各占一个打印区)。
5. 分析以下代码,最终输出结果是______。
Private Sub Form_Click()
Dim x As Integer
x = 5
Call Test(x)
Print x
End Sub
Private Sub Test(a As Integer)
a = a + 10
End Sub
A. 5
B. 10
C. 15
D. 出错
【答案】C
【解析】VB参数传递默认按地址传递(ByRef),Test子过程修改了a的值,同时也修改了实参x的值。调用后x=5+10=15,Print x输出15。若想按值传递需加ByVal。
6. 分析以下代码片段,MsgBox函数的返回值是______。
Private Sub Form_Click()
Dim r As Integer
r = MsgBox("是否继续?", vbYesNo + vbQuestion, "确认")
Print r
End Sub
(用户单击了"是"按钮)
A. 0
B. 1
C. 6
D. 7
【答案】C
【解析】MsgBox作为函数使用时返回用户单击的按钮对应的整数值。vbYes=6(是按钮),vbNo=7(否按钮)。用户单击"是",返回值为6。
7. 分析以下代码,Print输出中字母Y前有多少个空格______。
Private Sub Form_Click()
Print Tab(5); "X";
Print Tab(10); "Y"
End Sub
A. 4个
B. 5个
C. 10个
D. 无法确定
【答案】A
【解析】Tab(5)定位到第5列输出X,光标停在X后(约第6列)。Tab(10)定位到第10列输出Y。X占1列,从第6列到第10列共4列,故Y前有4个空格(Tab函数自动用空格填充到目标列)。
8. 分析以下代码片段,TypeName函数返回值是______。
Dim x As Variant
x = 123
x = "456"
Print TypeName(x)
A. Integer
B. String
C. Variant
D. 出错
【答案】B
【解析】Variant类型变量可以存储任意类型数据。x=123时存储Integer,x="456"时存储String。TypeName(x)返回当前值的类型,故输出String。Variant类型的变量其类型随所赋值动态变化。
9. 分析以下代码,Print输出结果是______。
Private Sub Form_Click()
Print "ABC";
Print
Print "DEF"
End Sub
A. ABCDEF
B. ABC换行DEF
C. ABC DEF
D. 出错
【答案】B
【解析】Print "ABC";以分号结束表示不换行(光标停在同一行末尾)。Print(无输出项)输出一个空行(换行)。Print "DEF"在新行输出DEF。最终输出:第1行ABC,第2行DEF。
10. 关于Spc函数和Tab函数,分析以下代码,说法正确的是______。
Print Spc(3); "A"; Spc(2); "B"
Print Tab(3); "C"
A. A前3空格,B前2空格,C在第3列
B. A前3空格,B前5空格,C在第3列
C. A前3空格,B前2空格,C在第1列
D. 程序出错
【答案】A
【解析】Spc(n)输出n个空格后输出后续内容。故A前有3空格,B前有2空格。Tab(3)绝对定位到第3列输出C。第二条Print语句自动先换行再执行Tab(3),故C在下一行第3列输出。
11. 分析以下代码,窗体上显示的内容是______。
Private Sub Form_Click()
Dim i As Integer
For i = 1 To 3
Print "#";
Next i
Print
End Sub
A. ###
B. # # #
C. 出错
D. 无输出
【答案】A
【解析】For循环执行3次,每次Print "#";紧凑输出一个#号(不换行)。循环结束后Print输出换行。窗体上显示###(三个#连在一起)。
12. 分析以下代码片段,x的最终值是______。
Dim x As Integer
x = 1
Do While x < 5
x = x + 1
Loop
Print x
A. 1
B. 4
C. 5
D. 无限循环
【答案】C
【解析】Do While x<5:x初始为1,第1次循环后x=2,第2次x=3,第3次x=4,第4次x=5,此时x<5不成立,退出循环。Print x输出5。
13. 分析以下代码,InputBox函数的返回类型正确的是______。
x = InputBox("输入数值", "提示", "100")
Print TypeName(x)
A. Integer
B. Long
C. String
D. Variant
【答案】C
【解析】InputBox函数返回值类型始终为String(字符串型),无论default参数设置什么值。若要对返回值进行数值运算,需用Val()函数转换。TypeName(x)返回String。
14. 分析以下代码,程序执行时会发生______。
Private Sub Form_Click()
Dim x As Integer
x = InputBox("请输入")
Print x
End Sub
(用户在输入框中输入"abc"并单击确定)
A. 输出0
B. 输出abc
C. 运行时出错(类型不匹配)
D. 输出空
【答案】C
【解析】InputBox返回字符串"abc",赋值给Integer类型变量x时,VB尝试将"abc"转为整数但失败,产生"类型不匹配"运行时错误。
15. 分析以下代码片段,MsgBox作为语句使用时,下列格式正确的是______。
A. MsgBox "Hello", vbOKOnly
B. x = MsgBox("Hello")
C. MsgBox("Hello")
D. Call MsgBox "Hello"
【答案】A
【解析】MsgBox作为语句(不使用返回值)时,参数不能加括号(除非用Call关键字)。A正确(语句用法,无括号)。B是函数用法。C语法错误(语句中参数加括号)。D语法错误(Call需加括号)。
16. 分析以下代码,MsgBox对话框中显示的按钮和图标是______。
MsgBox "文件已保存", vbOKCancel + vbExclamation, "提示"
A. 确定/取消 + 警告图标(!)
B. 确定/取消 + 信息图标(i)
C. 确定 + 警告图标
D. 是/否 + 警告图标
【答案】A
【解析】vbOKCancel=1(确定和取消两个按钮),vbExclamation=48(警告图标!)。通过+号组合buttons参数。故对话框显示确定和取消按钮,以及警告图标(!)。
17. 分析以下代码片段,在窗体的Print方法中,文本输出的位置是______。
Private Sub Form_Load()
Show
Print "Hello World"
End Sub
A. 窗体左上角
B. 窗体中央
C. 立即窗口
D. 出错
【答案】A
【解析】在Form_Load事件中使用Print方法,需先用Show方法显示窗体,否则Print输出不可见。Show后用Print输出,文本从窗体左上角(第1列第1行)开始输出。
18. 分析以下代码,Print输出的格式是______。
Private Sub Form_Click()
Print Tab(10); 100; Tab(20); 200
End Sub
A. 第10列输出100,第20列输出200(同行)
B. 第10列输出100,下一行第20列输出200
C. 第1列输出100,第10列输出200
D. 出错
【答案】A
【解析】Tab(n)绝对定位到第n列。同一条Print语句中,Tab(10)定位到第10列输出100,Tab(20)定位到第20列输出200。两者在同一行。
19. 分析以下代码片段,下列说法正确的是______。
Dim a As Integer, b As Integer
a = 10: b = 20
Print a = b
A. 输出10=True
B. 输出False
C. 输出0
D. 程序出错
【答案】B
【解析】Print a=b中,a=b是关系表达式(判断a是否等于b),不是赋值语句。a=10,b=20,a=b为False。Print输出False。在Print语句中=是关系运算符。
20. 分析以下代码,最终s的值是______。
Dim s As String
s = ""
For i = 1 To 3
s = s & "*"
Next i
Print s
A. * * *
B. ***
C. *
D. 出错
【答案】B
【解析】s初始为空字符串,循环3次每次在s后连接一个*号。第1次s="*",第2次s="**",第3次s="***"。Print s输出***(无空格)。
21. 分析以下代码片段,事件发生的顺序是______。
(程序运行后直接单击窗体)
Form_Load → Form_Activate → Form_Click
A. Load → Activate → Click
B. Click → Load → Activate
C. Load → Click → Activate
D. Activate → Load → Click
【答案】A
【解析】窗体事件顺序:Load(窗体加载时触发,发生在窗体显示前)→Activate(窗体激活获得焦点时触发)→Click(用户单击窗体时触发)。
22. 分析以下代码,x的最终值是______。
Dim x As Integer
x = 0
If x Then
Print "True"
Else
Print "False"
End If
A. True
B. False
C. 0
D. 出错
【答案】B
【解析】VB中0表示False,非0表示True。x=0,If x Then等价于If False Then,执行Else分支,输出False。
23. 分析以下代码片段,Print输出结果是______。
Private Sub Form_Click()
Dim a As Integer, b As Integer
a = 8: b = 3
Print a / b, a \ b
End Sub
A. 2.666667 2
B. 2 2
C. 2.67 2
D. 出错
【答案】A
【解析】/是普通除法,8/3=2.666667(浮点数结果)。\是整除法,8\3=2(舍去小数部分)。Print a/b,a\b输出2.666667 2。
24. 分析以下代码,MsgBox函数的返回值类型是______。
x = MsgBox("继续?", vbYesNo)
Print TypeName(x)
A. String
B. Integer
C. Variant
D. 出错
【答案】B
【解析】MsgBox作为函数使用时返回Integer类型值(用户单击的按钮对应的整数常量)。vbYes=6,vbNo=7,vbOK=1,vbCancel=2。TypeName(x)返回Integer。
25. 分析以下代码片段,下列赋值语句中正确的是______。
A. Let 5 = x
B. x + 1 = y
C. Let x = 5
D. 5 = x
【答案】C
【解析】赋值语句格式:[Let] 变量名 = 表达式。赋值号左侧必须是变量名(存储位置)。A中5是常量,B中x+1是表达式,D中5是常量,均不能作为赋值目标。
26. 分析以下代码,Print输出的行数是______。
Private Sub Form_Click()
Print "Line1";
Print "Line2"
Print
Print "Line3"
End Sub
A. 2行
B. 3行
C. 4行
D. 1行
【答案】B
【解析】Print "Line1";不换行,Print "Line2"在同一行输出。故第1行:Line1Line2。Print(无内容)输出空行(第2行)。Print "Line3"输出第3行:Line3。共3行。
27. 分析以下代码片段,程序的输出是______。
Private Sub Form_Click()
Dim score As Integer
score = 85
Select Case score
Case Is >= 90: Print "A"
Case Is >= 80: Print "B"
Case Else: Print "C"
End Select
End Sub
A. A
B. B
C. C
D. 无输出
【答案】B
【解析】Select Case从上到下依次判断,遇到第一个满足条件的Case即执行并退出。score=85,Is>=90不满足,Is>=80满足,执行Print "B"。
28. 分析以下代码,下列叙述中正确的是______。
Private Sub Form_Click()
Static n As Integer
n = n + 1
Print n
End Sub
(连续单击窗体3次)
A. 每次单击都输出1
B. 第1次1,第2次2,第3次3
C. 每次输出随机数
D. 程序出错
【答案】B
【解析】Static声明的变量在过程调用间保留其值。第1次单击:n=0+1=1,输出1。第2次:n=1+1=2,输出2。第3次:n=2+1=3,输出3。
29. 分析以下代码片段,x=InputBox("输入","",100)后,TypeName(x)返回的是______。
A. Integer
B. String
C. Variant
D. 出错
【答案】B
【解析】InputBox返回值类型始终为String。即使default参数设为100(数值),InputBox仍返回字符串"100"。Type(x)或TypeName(x)均返回String。
30. 分析以下代码,程序运行后单击窗体,输出结果是______。
Private Sub Form_Click()
Dim a%, b%
a = 10: b = 20
Swap a, b
Print a, b
End Sub
Private Sub Swap(x%, y%)
Dim t%
t = x: x = y: y = t
End Sub
A. 10 20
B. 20 10
C. 0 0
D. 出错
【答案】B
【解析】VB参数默认按地址传递(ByRef),Swap子过程交换了x和y的值,同时也交换了实参a和b的值。调用后a=20,b=10。
二、填空题(本大题共10小题,每题2分,共20分)
1. 分析以下代码,空白处应填入______使程序能正确交换两个变量的值。
Private Sub Form_Click()
Dim a As Integer, b As Integer
a = 5: b = 8
__________ ' 交换a和b的值
Print a, b ' 期望输出 8 5
End Sub
【答案】Dim t As Integer: t = a: a = b: b = t
【解析】交换两个变量的值需用第三个临时变量。步骤:①t=a保存a的值;②a=b将b的值赋给a;③b=t将原来a的值赋给b。若无临时变量直接a=b:b=a则两个变量值均为b的值。
2. 以下代码用InputBox输入一个数,判断其奇偶性,空白处应填入______。
Private Sub Form_Click()
Dim n As Integer
n = Val(InputBox("输入整数"))
If __________ Then
Print "偶数"
Else
Print "奇数"
End If
End Sub
【答案】n Mod 2 = 0
【解析】判断奇偶性的方法是:若n能被2整除(n Mod 2 = 0)则为偶数,否则为奇数。Mod运算符返回两数相除的余数。
3. 以下代码用Print方法在窗体上从第5列开始输出"Hello",应填入______。
Private Sub Form_Click()
__________
End Sub
【答案】Print Tab(5); "Hello"
【解析】Tab(n)函数将输出位置绝对定位到第n列。Tab(5)定位到第5列后输出"Hello"。若用Spc(5)则是相对定位(从当前位置起输出5个空格)。
4. 以下代码用MsgBox函数显示提示信息,并将用户选择存到变量r中,空白处应填入______。
Private Sub Form_Click()
Dim r As Integer
r = __________
If r = vbYes Then Print "是" Else Print "否"
End Sub
【答案】MsgBox("是否继续?", vbYesNo + vbQuestion, "确认")
【解析】MsgBox作为函数使用时,参数需用括号括起来,返回值赋给变量r。vbYesNo显示是/否按钮,vbQuestion显示问号图标。用户单击"是"返回6(vbYes),单击"否"返回7(vbNo)。
5. 以下代码用循环计算1~100的和,空白处应填入______。
Private Sub Form_Click()
Dim s As Integer, i As Integer
s = 0
For i = 1 To 100
__________
Next i
Print s
End Sub
【答案】s = s + i
【解析】累加求和的经典模式:s初始为0,循环中s=s+i将每个i的值累加到s中。循环结束后s=1+2+3+...+100=5050。
6. 以下代码用With语句设置文本框属性,空白处应填入______。
Private Sub Form_Load()
With Text1
.Text = "请输入"
.ForeColor = vbRed
__________
End With
End Sub
【答案】.FontName = "宋体"
【解析】With语句用于对同一个对象的多个属性进行设置,省略对象名,直接用.属性名。常见文本框属性:.Text(文本)、.ForeColor(前景色)、.FontName(字体)、.FontSize(字号)、.Enabled(是否可用)、.Visible(是否可见)。
7. 以下代码用Do Loop循环计算n的阶乘,空白处应填入______。
Private Sub Form_Click()
Dim n As Integer, i As Integer, f As Long
n = 5: f = 1: i = 1
Do While i <= n
__________
i = i + 1
Loop
Print f
End Sub
【答案】f = f * i
【解析】计算阶乘n!=1×2×3×...×n。循环中f=f*i将每个i累乘到f中。n=5时,f=1×1×2×3×4×5=120。
8. 以下代码用Select Case判断成绩等级,空白处应填入______。
Private Sub Form_Click()
Dim score As Integer
score = Val(InputBox("输入成绩"))
Select Case score
Case __________
Print "优秀"
Case 80 To 89
Print "良好"
Case Else
Print "及格或不及格"
End Select
End Sub
【答案】90 To 100
【解析】Select Case的Case子句可以用"下限 To 上限"表示范围。90 To 100匹配90~100之间的分数。注意Case子句按顺序匹配,应将范围大的放在前面或合理排序。
9. 以下代码用Print方法在立即窗口输出九九乘法表,空白处应填入______。
Private Sub Form_Click()
Dim i As Integer, j As Integer
For i = 1 To 9
For j = 1 To i
Debug.Print i & "×" & j & "=" & i * j;
__________
Next j
Debug.Print
Next i
End Sub
【答案】If j < i Then Debug.Print Spc(1);
【解析】九九乘法表中每个算式之间需要适当空格分隔。Debug.Print(无输出项)用于换行。内层循环输出一行乘法算式,外层循环每轮输出一行。
10. 以下代码用End语句结束程序,空白处应填入______。
Private Sub Form_Click()
Dim r As Integer
r = MsgBox("确定退出吗?", vbYesNo)
If r = vbYes Then __________
End Sub
【答案】End
【解析】End语句用于强制结束整个程序,清除所有变量。与Unload Me(卸载当前窗体)不同,End会直接终止程序运行。一般在用户确认退出时使用。
三、程序填空题(本大题共2小题,每题10分,共20分)
1. 以下程序用InputBox输入两个整数,用MsgBox显示两数之和。阅读程序,在空白处填入恰当内容。
Private Sub Form_Click()
Dim a As Integer, b As Integer, s As Integer
a = Val(InputBox("输入第一个数"))
b = Val(InputBox("输入第二个数"))
s = 【1】
MsgBox 【2】, vbOKOnly, "结果"
End Sub
【空1】a + b
【空2】\"两数之和为:\" & s
【解析】【1】s=a+b:计算两数之和,赋值给s。【2】MsgBox的第一个参数是提示信息,需将字符串与s连接:\"两数之和为:\" & s。注意字符串连接用&运算符。
2. 以下程序用Print方法在窗体上输出如下图案(共5行,第1行1个*,第2行2个*,依此类推)。阅读程序,在空白处填入恰当内容。
*
**
***
****
*****
Private Sub Form_Click()
Dim i As Integer, j As Integer
For i = 1 To 5
For j = 1 To 【1】
Print 【2】;
Next j
【3】
Next i
End Sub
【空1】i
【空2】\"*\"
【空3】Print
【解析】【1】内层循环变量j的上限为i,使第i行输出i个*号。【2】Print \"*\";紧凑输出*号(不换行)。【3】内层循环结束后,Print输出换行,使下一行从新行开始。
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$
编写说明:内蒙古自治区对口招生《计算机类考纲百套卷》,依据《2019年内蒙古自治区高等职业院校对口招收中等职业学校毕业生计算机类专业课综合考试指导纲要》编写。本专辑涵盖四门课程,且每门课程均采用三阶递进式训练体系:基础层(具象化支架)拆解考点为微目标,紧扣考纲“掌握”“理解”要求编写考点训练卷;巩固层(关联性支架)强化知识交叉与场景关联,按考纲专题编专题训练卷;应用层(引导性支架)聚焦真题突破,结合知识模块与教材编写课程综合卷。
本试卷是第5卷,为考点训练卷,按《Visual Basic程序设计》范围和要求编写。具体内容为:数据输出,常用基本语句,利用文本框进行数据输入,使用对话框实现数据的输入和输出。
内蒙古对口招生《计算机类考纲百套卷》 第5卷
《Visual Basic程序设计》
顺序结构 考点训练卷
考试时间60分钟 满分100分
班级 姓名 学号 成绩
一、单项选择题(本大题共30小题,每题2分,共60分)
1. 分析以下代码片段,最终窗体上显示的输出是______。
Private Sub Form_Click()
Dim a As Integer, b As Integer
a = 5: b = 3
a = b
b = a
Print a; b
End Sub
A. 5 3
B. 3 5
C. 3 3
D. 5 5
2. 分析以下代码,Print方法的输出结果是______。
Private Sub Form_Click()
Dim s As String
s = "ABC"
Print s; "DEF"; s
End Sub
A. ABCDEFABC
B. ABC DEF ABC
C. ABCDEF ABC
D. 程序出错
3. 分析以下代码片段,变量x的最终值是______。
Dim x As Integer
x = 10
x = x + 5
x = x * 2
Print x
A. 10
B. 15
C. 30
D. 40
4. 分析以下代码,在窗体中的输出是______。
Private Sub Form_Click()
Dim a As Integer, b As Integer
a = 7: b = 2
Print a \ b, a Mod b
End Sub
A. 3 1
B. 3.5 1
C. 3 2
D. 出错
5. 分析以下代码,最终输出结果是______。
Private Sub Form_Click()
Dim x As Integer
x = 5
Call Test(x)
Print x
End Sub
Private Sub Test(a As Integer)
a = a + 10
End Sub
A. 5
B. 10
C. 15
D. 出错
6. 分析以下代码片段,MsgBox函数的返回值是______。
Private Sub Form_Click()
Dim r As Integer
r = MsgBox("是否继续?", vbYesNo + vbQuestion, "确认")
Print r
End Sub
(用户单击了"是"按钮)
A. 0
B. 1
C. 6
D. 7
7. 分析以下代码,Print输出中字母Y前有多少个空格______。
Private Sub Form_Click()
Print Tab(5); "X";
Print Tab(10); "Y"
End Sub
A. 4个
B. 5个
C. 10个
D. 无法确定
8. 分析以下代码片段,TypeName函数返回值是______。
Dim x As Variant
x = 123
x = "456"
Print TypeName(x)
A. Integer
B. String
C. Variant
D. 出错
9. 分析以下代码,Print输出结果是______。
Private Sub Form_Click()
Print "ABC";
Print
Print "DEF"
End Sub
A. ABCDEF
B. ABC换行DEF
C. ABC DEF
D. 出错
10. 关于Spc函数和Tab函数,分析以下代码,说法正确的是______。
Print Spc(3); "A"; Spc(2); "B"
Print Tab(3); "C"
A. A前3空格,B前2空格,C在第3列
B. A前3空格,B前5空格,C在第3列
C. A前3空格,B前2空格,C在第1列
D. 程序出错
11. 分析以下代码,窗体上显示的内容是______。
Private Sub Form_Click()
Dim i As Integer
For i = 1 To 3
Print "#";
Next i
Print
End Sub
A. ###
B. # # #
C. 出错
D. 无输出
12. 分析以下代码片段,x的最终值是______。
Dim x As Integer
x = 1
Do While x < 5
x = x + 1
Loop
Print x
A. 1
B. 4
C. 5
D. 无限循环
13. 分析以下代码,InputBox函数的返回类型正确的是______。
x = InputBox("输入数值", "提示", "100")
Print TypeName(x)
A. Integer
B. Long
C. String
D. Variant
14. 分析以下代码,程序执行时会发生______。
Private Sub Form_Click()
Dim x As Integer
x = InputBox("请输入")
Print x
End Sub
(用户在输入框中输入"abc"并单击确定)
A. 输出0
B. 输出abc
C. 运行时出错(类型不匹配)
D. 输出空
15. 分析以下代码片段,MsgBox作为语句使用时,下列格式正确的是______。
A. MsgBox "Hello", vbOKOnly
B. x = MsgBox("Hello")
C. MsgBox("Hello")
D. Call MsgBox "Hello"
16. 分析以下代码,MsgBox对话框中显示的按钮和图标是______。
MsgBox "文件已保存", vbOKCancel + vbExclamation, "提示"
A. 确定/取消 + 警告图标(!)
B. 确定/取消 + 信息图标(i)
C. 确定 + 警告图标
D. 是/否 + 警告图标
17. 分析以下代码片段,在窗体的Print方法中,文本输出的位置是______。
Private Sub Form_Load()
Show
Print "Hello World"
End Sub
A. 窗体左上角
B. 窗体中央
C. 立即窗口
D. 出错
18. 分析以下代码,Print输出的格式是______。
Private Sub Form_Click()
Print Tab(10); 100; Tab(20); 200
End Sub
A. 第10列输出100,第20列输出200(同行)
B. 第10列输出100,下一行第20列输出200
C. 第1列输出100,第10列输出200
D. 出错
19. 分析以下代码片段,下列说法正确的是______。
Dim a As Integer, b As Integer
a = 10: b = 20
Print a = b
A. 输出10=True
B. 输出False
C. 输出0
D. 程序出错
20. 分析以下代码,最终s的值是______。
Dim s As String
s = ""
For i = 1 To 3
s = s & "*"
Next i
Print s
A. * * *
B. ***
C. *
D. 出错
21. 分析以下代码片段,事件发生的顺序是______。
(程序运行后直接单击窗体)
Form_Load → Form_Activate → Form_Click
A. Load → Activate → Click
B. Click → Load → Activate
C. Load → Click → Activate
D. Activate → Load → Click
22. 分析以下代码,x的最终值是______。
Dim x As Integer
x = 0
If x Then
Print "True"
Else
Print "False"
End If
A. True
B. False
C. 0
D. 出错
23. 分析以下代码片段,Print输出结果是______。
Private Sub Form_Click()
Dim a As Integer, b As Integer
a = 8: b = 3
Print a / b, a \ b
End Sub
A. 2.666667 2
B. 2 2
C. 2.67 2
D. 出错
24. 分析以下代码,MsgBox函数的返回值类型是______。
x = MsgBox("继续?", vbYesNo)
Print TypeName(x)
A. String
B. Integer
C. Variant
D. 出错
25. 分析以下代码片段,下列赋值语句中正确的是______。
A. Let 5 = x
B. x + 1 = y
C. Let x = 5
D. 5 = x
26. 分析以下代码,Print输出的行数是______。
Private Sub Form_Click()
Print "Line1";
Print "Line2"
Print
Print "Line3"
End Sub
A. 2行
B. 3行
C. 4行
D. 1行
27. 分析以下代码片段,程序的输出是______。
Private Sub Form_Click()
Dim score As Integer
score = 85
Select Case score
Case Is >= 90: Print "A"
Case Is >= 80: Print "B"
Case Else: Print "C"
End Select
End Sub
A. A
B. B
C. C
D. 无输出
28. 分析以下代码,下列叙述中正确的是______。
Private Sub Form_Click()
Static n As Integer
n = n + 1
Print n
End Sub
(连续单击窗体3次)
A. 每次单击都输出1
B. 第1次1,第2次2,第3次3
C. 每次输出随机数
D. 程序出错
29. 分析以下代码片段,x=InputBox("输入","",100)后,TypeName(x)返回的是______。
A. Integer
B. String
C. Variant
D. 出错
30. 分析以下代码,程序运行后单击窗体,输出结果是______。
Private Sub Form_Click()
Dim a%, b%
a = 10: b = 20
Swap a, b
Print a, b
End Sub
Private Sub Swap(x%, y%)
Dim t%
t = x: x = y: y = t
End Sub
A. 10 20
B. 20 10
C. 0 0
D. 出错
二、填空题(本大题共10小题,每题2分,共20分)
1. 分析以下代码,空白处应填入______使程序能正确交换两个变量的值。
Private Sub Form_Click()
Dim a As Integer, b As Integer
a = 5: b = 8
__________ ' 交换a和b的值
Print a, b ' 期望输出 8 5
End Sub
2. 以下代码用InputBox输入一个数,判断其奇偶性,空白处应填入______。
Private Sub Form_Click()
Dim n As Integer
n = Val(InputBox("输入整数"))
If __________ Then
Print "偶数"
Else
Print "奇数"
End If
End Sub
3. 以下代码用Print方法在窗体上从第5列开始输出"Hello",应填入______。
Private Sub Form_Click()
__________
End Sub
4. 以下代码用MsgBox函数显示提示信息,并将用户选择存到变量r中,空白处应填入______。
Private Sub Form_Click()
Dim r As Integer
r = __________
If r = vbYes Then Print "是" Else Print "否"
End Sub
5. 以下代码用循环计算1~100的和,空白处应填入______。
Private Sub Form_Click()
Dim s As Integer, i As Integer
s = 0
For i = 1 To 100
__________
Next i
Print s
End Sub
6. 以下代码用With语句设置文本框属性,空白处应填入______。
Private Sub Form_Load()
With Text1
.Text = "请输入"
.ForeColor = vbRed
__________
End With
End Sub
7. 以下代码用Do Loop循环计算n的阶乘,空白处应填入______。
Private Sub Form_Click()
Dim n As Integer, i As Integer, f As Long
n = 5: f = 1: i = 1
Do While i <= n
__________
i = i + 1
Loop
Print f
End Sub
8. 以下代码用Select Case判断成绩等级,空白处应填入______。
Private Sub Form_Click()
Dim score As Integer
score = Val(InputBox("输入成绩"))
Select Case score
Case __________
Print "优秀"
Case 80 To 89
Print "良好"
Case Else
Print "及格或不及格"
End Select
End Sub
9. 以下代码用Print方法在立即窗口输出九九乘法表,空白处应填入______。
Private Sub Form_Click()
Dim i As Integer, j As Integer
For i = 1 To 9
For j = 1 To i
Debug.Print i & "×" & j & "=" & i * j;
__________
Next j
Debug.Print
Next i
End Sub
10. 以下代码用End语句结束程序,空白处应填入______。
Private Sub Form_Click()
Dim r As Integer
r = MsgBox("确定退出吗?", vbYesNo)
If r = vbYes Then __________
End Sub
三、程序填空题(本大题共2小题,每题10分,共20分)
1. 以下程序用InputBox输入两个整数,用MsgBox显示两数之和。阅读程序,在空白处填入恰当内容。
Private Sub Form_Click()
Dim a As Integer, b As Integer, s As Integer
a = Val(InputBox("输入第一个数"))
b = Val(InputBox("输入第二个数"))
s = 【1】
MsgBox 【2】, vbOKOnly, "结果"
End Sub
2. 以下程序用Print方法在窗体上输出如下图案(共5行,第1行1个*,第2行2个*,依此类推)。阅读程序,在空白处填入恰当内容。
*
**
***
****
*****
Private Sub Form_Click()
Dim i As Integer, j As Integer
For i = 1 To 5
For j = 1 To 【1】
Print 【2】;
Next j
【3】
Next i
End Sub
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$