大学 VB 第4章 VB控制结构.docx
- 文档编号:17231795
- 上传时间:2023-07-23
- 格式:DOCX
- 页数:28
- 大小:39.83KB
大学 VB 第4章 VB控制结构.docx
《大学 VB 第4章 VB控制结构.docx》由会员分享,可在线阅读,更多相关《大学 VB 第4章 VB控制结构.docx(28页珍藏版)》请在冰点文库上搜索。
大学VB第4章VB控制结构
第4章VB控制结构
一.例题解析
(1)设有语句x=InputBox("输入数值","0","示例"),程序运行后,如果从键盘上输入数值10并按回车键,则下列叙述中正确的是。
A)变量x的值是数值10
B)在InputBox对话框标题栏中显示的是“示例”
C)0是默认值
D)变量x的值是字符串"10"
【答案】D
【解析】InputBox函数一般格式是:
InputBox(<提示>[,标题][,默认值][,X][,Y][,帮助文件名,上下文编号])
参照一般格式可知,题干中的“输入数值”是对话框的提示部分,“0”是对话框的标题,“示例”是对话框的默认值。
由于程序运行时用户输入了10,且该函数的返回值是字符串,所以选项D是正确答案。
(2)在窗体上放置一个命令按钮,然后编写如下事件过程:
PrivateSubCommand1_Click()
Dima,b
a=InputBox("请输入一个整数")
b=InputBox("请输入一个整数")
Printb+a
EndSub
程序运行后,单击命令按钮,在输入对话框中分别输入321和456,输出结果为。
A)B)
C)777D)有语法错误,不能执行
【答案】B
【解析】“+”运算符有两个作用:
对于字符串型运算数,执行字符串连接运算;对于数值型运算数,执行加法运算。
InputBox函数的返回值是字符串,所以执行字符串连接运算,即将字符串a连接到字符串b之后,结果为。
(3)运行下列程序,单击窗体,则消息框中显示的提示是。
PrivateSubForm_Click()
MsgBoxStr(123+123)
EndSub
A)123+123B)"246"
C)246D)显示出错信息
【答案】C
【解析】MsgBox语句后给定的字符串参数Str(123+123)是消息框中要显示的提示信息。
Str(123+123)函数首先计算算术表达式123+123,结果为246,然后将其转换为MsgBox语句所需要的字符串类型的参数。
但消息框中显示提示信息时不带字符串两侧的双引号定界符。
(4)执行如下语句后,Print语句的输出结果是。
A=100
PrintIIf(A>50,"Large","Small")
A)1000B)TrueC)LargeD)Small
【答案】C
【解析】IIF函数的一般格式是IIf(表达式1,表达式2,表达式3)。
当表达式1的值为True时,函数返回表达式2的值,否则返回表达式3的值。
因而本题的正确答案是选项C。
(5)下列语句中,与Else匹配的If语句是。
Ifx>0Then
Ifx<10Then
Printx
Else
Printx*2
Endif
Endif
A)第一个B)第二个
C)第一个或第二个D)程序有错误
【答案】B
【解析】当出现If语句的嵌套时,Else总是与它前面离它最近的一个If语句匹配,即“最近匹配原则”。
(6)运行下列程序,单击窗体,则输出结果是。
PrivateSubForm_Click()
M=5
IfM>=0ThenN=1
IfM>=1ThenN=2
IfM>=2ThenN=3
PrintN;
EndSub
A)1B)2C)3D)123
【答案】C
【解析】按照语句的执行顺序,M首先被赋值为5,然后判断第一个条件M>=0,条件满足,变量N被赋值为1;继续判断第二个条件M>=1,条件仍然满足,变量N重新被赋值为2;最后判断第三个条件M>=2,条件仍然满足,所以变量N的值最后被赋值为3。
Print语句输出变量N的值是3。
(7)运行下列程序,单击窗体,从键盘输入50,则输出结果是。
PrivateSubForm_Click()
a=Val(InputBox("A="))
SelectCasea
CaseIs<100:
Printa+1;
CaseIs<80:
Printa+2;
CaseIs<60:
Printa+3;
CaseElse:
Printa+4;
EndSelect
EndSub
A)51B)52C)53D)51525354
【答案】A
【解析】SelectCase语句的执行方法是:
用测试表达式的值与第一个Case子句的表达式值进行比较,如果匹配,则执行第一个Case子句下的语句,执行完成结束Select语句的执行;如果不匹配,依次比较第二、第三、……各Case子句。
本例题中,A=50,与第一Case子句的条件匹配(Is<100),所以输出结果是51。
(8)在For循环中,循环控制变量的增量(循环步长)。
A)只能是整数B)只能是正整数
C)只能是不为0的整数D)任何数值型数据
【答案】D
【解析】For循环的控制变量和它的增量可以是任何一种数值型数据。
但如果增量为0,在循环体内,必须有可以结束循环的语句,否则会形成“死循环”。
(9)运行下列程序后,单击窗体,则其中的循环体一共被执行次。
PrivateSubForm_Click()
ForI=7To100Step5
PrintI
NextI
EndSub
A)16B)17C)18D)19
【答案】D
【解析】For~Next循环中,循环体的执行次数=Int((上界-下界)/步长+1),即Int((100-7)/5+1)。
(10)运行下列程序,单击窗体,则运行结果是。
PrivateSubForm_Click()
Forx=1To2
a=0
Fory=1Tox+1
a=a+1
Nexty
Printa;
Nextx
EndSub
A)11B)00
C)12D)23
【答案】D
【解析】本题是嵌套两层的For循环结构,外层循环控制变量是x,x的值由1变到2,控制执行两次循环体,每次执行循环体的第—个语句是把0赋给变量a,执行循环体的最后一个语句是输出a的值,用内层循环计算a的值,当x值为1时,内层循环执行2次,每次使a增1,退出内层循环时a的值为2,2是第—个输出;当x值为2时,内层循环执行3次,每次使a增1,退出内层循环时a的值为3,3是第二个输出。
由于Print语句以分号结束,因此,用紧凑格式输出2和3。
(11)运行下列程序,单击窗体,则执行结果是。
PrivateSubForm_Click()
s=0
Do
s=(s+1)*(s+2)
Number=Number+1
LoopUntils>=30
PrintNumber;s
EndSub
A)01B)3030
C)430D)3182
【答案】D
【解析】本题使用了Do~LoopUntil循环结构,循环初始设置s为0,循环的退出条件是s>=30,在循环中每次用(s+1)*(s+2)计算出新的s值,很容易算出第1次执行后s的值是2,第2次用3乘以4行后s的值是12,第3次用13乘以14行后s的值是182,到此s的值超过了30,退出循环。
退出循环时共执行了3次循环,Number每次执行循环增l,所以Number的值是3,s的值是182。
(12)以下能够正确计算n!
的程序是。
A)PrivateSubCommandl_Click()
n=5:
x=1
Do
x=x*i
i=i+1
LoopWhilei Printx EndSub B)PrivateSubCommandl_Click() n=5: x=l: i=l Do x=x*i i=i+1 LoopWhilei Printx EndSub C)PrivateSubCommandl_Click() n=5: x=1: i=1 Do x=x*i i=i+1 LoopWhilei<=n Printx EndSub D)PrivateSubCommandl_Click() n=5: x=l: i=l Do x=x*i i=i+l LoopWhilei>n Printx EndSub 【答案】C 【解析】选项A中在循环体外没有为变量i赋初始值,因而变量i的初值为0,则循环体执行第一次的时候,存放阶乘的变量x的值改变为0,所以选项A是错误的。 选项B中各变量的初始值是正确的,错在判断循环执行的条件Whilei 。 选项D的错误原因也是判断循环执行的条件Whilei>n不符合题意,使用该条件循环体只能执行一次,即终止循环,即x中求出的是1! 。 (13)在窗体上画一个命令按钮,名称为Command1。 然后编写如下程序: PrivateSubCommand1_Click() Fori=1To4 Forj=0Toi PrintChr$(65+i); Nextj Print Nexti EndSub 程序运行后,如果单击命令按钮,则在窗体上显示的内容是。 A)BBB)AC)BD)AA CCCBBCCBBB DDDDCCCDDDCCCC EEEEEDDDDEEEEDDDDD 【答案】A 【解析】当i为1时,j的取值为0、1,在同一行输出ASCⅡ码值为66的字符B两次后换行;同理,当i为2时,在同一行输出字符C三次后换行。 依此类推。 二.练习题 1.单项选择题 1.设有语句x=InputBox("输入数值","0","示例"),程序运行后,如果从键盘上输入数值10并按回车键,则下列叙述中正确的是。 A)变量x的值是数值10B)在InputBox对话框标题栏中显示的是“示例” C)0是默认值D)变量x的值是字符串"10" 2.在窗体上放置一个命令按钮,然后编写如下事件过程: PrivateSubCommand1_Click() Dima,b a=InputBox("请输入一个整数") b=InputBox("请输入一个整数") Printb+a EndSub 运行程序,单击命令按钮,在输入对话框中分别输入321和456,输出结果为。 A)B) C)777D)有语法错误,不能执行 3.运行下列程序,单击窗体,则消息框中显示的提示是。 PrivateSubForm_Click() MsgBoxStr(123+123) EndSub A)123+123B)"246" C)246D)显示出错信息 4.执行如下语句后,Print语句的输出结果是。 A=100 PrintIIf(A>50,"Large","Small") A)1000B)TrueC)LargeD)Small 5.下列语句中,与Else匹配的If语句是。 Ifx>0Then Ifx<10Then Printx Else Printx*2 Endif Endif A)第一个B)第二个C)第一个或第二个D)程序有错误 6.运行下列程序,单击窗体,则输出结果是。 PrivateSubForm_Click() M=5 IfM>=0ThenN=1 IfM>=1ThenN=2 IfM>=2ThenN=3 PrintN; EndSub A)1B)2C)3D)123 7.运行下列程序,单击窗体,从键盘输入50,则输出结果是。 PrivateSubForm_Click() a=Val(InputBox("A=")) SelectCasea CaseIs<100: Printa+1; CaseIs<80: Printa+2; CaseIs<60: Printa+3; CaseElse: Printa+4; EndSelect EndSub A)51B)52C)53D)51525354 8.在For循环中,循环控制变量的增量(循环步长)。 A)只能是整数B)只能是正整数 C)只能是不为0的整数D)任何数值型数据 9.运行下列程序后,单击窗体,则其中的循环体一共被执行次。 PrivateSubForm_Click() ForI=7To100Step5 PrintI NextI EndSub A)16B)17C)18D)19 10.运行下列程序,单击窗体,则运行结果是。 PrivateSubForm_Click() Forx=1To2 a=0 Fory=1Tox+1 a=a+1 Nexty Printa; Nextx EndSub A)11B)00C)12D)23 11.运行下列程序,单击窗体,则执行结果是。 PrivateSubForm_Click() s=0 Do s=(s+1)*(s+2) Number=Number+1 LoopUntils>=30 PrintNumber;s EndSub A)01B)3030C)430D)3182 12.以下能够正确计算n! 的程序是。 A)PrivateSubCommandl_Click() n=5: x=1 Do x=x*i i=i+1 LoopWhilei Printx EndSub B)PrivateSubCommandl_Click() n=5: x=1: i=1 Do x=x*i i=i+1 LoopWhilei Printx EndSub C)PrivateSubCommand1_Click() n=5: x=1: i=1 Do x=x*i i=i+1 LoopWhilei<=n Printx EndSub D)PrivateSubCommandl_Click() n=5: x=1: i=1 Do x=x*i i=i+1 LoopWhilei>n Printx EndSub 13.在窗体上画一个命令按钮,名称为Command1。 然后编写如下程序: PrivateSubCommand1_Click() Fori=1To4 Forj=0Toi PrintChr$(65+i); Nextj Print Nexti EndSub 程序运行后,如果单击命令按钮,则在窗体上显示的内容是。 A)BBB)AC)BD)AA CCCBBCCBBB DDDDCCCDDDCCCC EEEEEDDDDEEEEDDDDD 14.有如下程序: PrivateSubForm_Click() ddd=MsgBox("注意",vbAbortRetryIgnore+vbExclamation,"标题") EndSub 运行后,单击窗体,则显示的消息对话框是。 A) B) C) D) 15.下面程序运行后,单击窗体,输出的结果是。 PrivateSubForm_Click() Fori=10To4Step-2 k=i Nexti Printk;i EndSub A)52B)53C)42D)43 16.下面程序中,能正确计算出10的阶乘值(10! )的是。 A)PrivateSubForm_Click() p=0 Fori=1To10 p=p*i Nexti Printp EndSub B)PrivateSubForm_Click() p=1 Fori=1To10 p=p*i Nexti Printp EndSub C)PrivateSubForm_Click() Fori=1To10 p=0 p=p*i Nexti Printp EndSub D)PrivateSubForm_Click() Fori=1To10 p=1 p=p*i Nexti Printp EndSub 17.下面程序运行后,单击窗体,从键盘输入a,输出的结果是。 PrivateSubform_Click() t=InputBox("请输入一个字符: ") SelectCaset Case"a" y=String(3,UCase(t)) Case"A" y=String(3,Lcase(t)) CaseElse y="AaA" EndSelect Printy EndSub A)aaaB)AAAC)AaAD)aAa 18.下面程序运行后,单击窗体,输出的结果是。 PrivateSubForm_Click() m=63 n=14 DoWhilem<>n DoWhilem>n m=m-n Loop DoWhilen>m n=n-m Loop Loop Printm;n EndSub A)77B)11C)17D)71 19.下面程序运行后,单击窗体,输出的结果是。 PrivateSubForm_Click() a$="" Fori=1ToLen(a$) k=Mid(a$,i,1) m=Trim(Str(Val(k)+2)) s=s+m Nexti Prints EndSub A)30B)50C)D) 20.下面程序运行后,单击窗体,输出的结果是。 PrivateSubform_Click() k="A" Fori=5To0Step-1 t=t+Chr(Asc(k)+i) Nexti Printt EndSub运行后输出结果是 A)ABCDEB)ABCDEFC)FEDCBAD)EDCBA 21.下面程序运行后,单击窗体,输出的结果是。 PrivateSubForm_Click() ForJ=4To1Step-1 PrintTab(6-J); ForK=3To1Step-1 Print"*"; NextK Print NextJ EndSub A)***B)***C)***D)**** ************ *********** ********** 22.下面程序运行后,单击窗体,输出的结果是。 PrivateSubForm_Click() a=100 Do IfaMod2=0Then s=s+1 EndIf a=a+1 LoopWhilea<121 Printa;s EndSub A)12012B)12010C)12212D)12111 23.下面程序运行后,单击窗体,从键盘输入1,输出的结果是。 PrivateSubForm_Click() x=-5 s=InputBox("请输入一个整数") SelectCases CaseIs>0: y=x+1 Case1To10: y=x+2 CaseElse: y=x+3 EndSelect Printx;y EndSub A)-5-1B)-5-4C)-5-3D)-5-5 24.在窗体上画一个名称为Commandl的命令按钮,然后编写如下事件过程: PrivateSubCommand1_Click() DimsumAsInteger sum=1 DoUntilsum>5 Printsum sum=sum+2 Loop EndSub 程序运行后,单击命令按钮,则窗体上显示的内容是。 A)lB)1C)1D)无数据输出 324 546 25.在窗体上画一个名称为Commandl的命令按钮,然后编写如下事件过程: PrivateSubCommand1_Click() Forn=1To10 IfnMod3<>0Thenm=m+n\5 Nextn Printm EndSub 程序运行后,如果单击命令按钮,则窗体上显示的内容是。 A)5B)3C)2D)4 26.有如下程序 PrivateSubForm_Click() y=1: x=1 DoUntily>5 x=x*y y=y+1 Loop Printx;y EndSub 运行后输出的结果为。 A)1206B)245C)66D)显示出错信息 27.下面程序运行后,单击窗体,则输出结果为。 PrivateSubForm_Click() a$="1234" b$="-*/" Forj=4To1Step-1 c$=c$+Mid$(a$,j)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 大学 VB 第4章 VB控制结构 控制 结构