第8周上机练习VB及答案.docx
《第8周上机练习VB及答案.docx》由会员分享,可在线阅读,更多相关《第8周上机练习VB及答案.docx(9页珍藏版)》请在冰点文库上搜索。
第8周上机练习VB及答案
Select语法格式:
SelectCase表达式
Case表达式列表1
语句序列1
Case表达式列表2
语句序列2
……
Case表达式列表n-1
语句序列n-1
EndSelect
值的形式
1、常数
2、连续范围1to100
3、满足条件a>0
4、组合形式,逗号分隔
-10,1to100
例1:
x=inputbox("输入一个整数")
SelectCasex
Case1,3,5,7,9
Printx;"这是奇数"
Case2,4,6,8,10
Printx;"这是偶数"
EndSelect
例2:
SelectCasestringc
Case"a"To"z","A"To"Z"
Printstringc+"isaletter"
Case"0"To"9"
Printstringc+"isanumber"
CaseElse
Printstringc+“isonlyachar"
EndSelect
例3:
score=inputbox("输入一个学生成绩")
SelectCasescore
Caseis>90
Printscore;"成绩等次为:
A"
Caseis>=80
Printscore;"成绩等次为:
B"
Caseis>=70
Printscore;"成绩等次为:
C"
CaseElse
Printscore;"成绩等次为:
D"
EndSelect
嵌套
selectcasea
case
if条件then
语句
elseif条件then
语句
endif
case...
if条件then
语句
elseif条件then
语句
Endif
CaseElse
if条件then
语句
elseif条件then
语句
Endif
endselect
作业:
1、输入一个字符,判断它是否数字(0-9),字母(a-z,A-Z)或者其他字符。
(用select语句)
PrivateSubCommand1_Click()
DimStringcAsString
Stringc=Text1
SelectCaseStringc
Case"a"To"z","A"To"Z"
PrintStringc+"isaletter"
Case"0"To"9"
PrintStringc+"isanumber"
CaseElse
PrintStringc+"isonlyachar"
EndSelect
EndSub
2、输入一个成绩(0-100),判断级别。
85-100优秀,75-84良好,60-74中等,60以下(不含60)不及格。
(用select语句)
PrivateSubCommand1_Click()
DimscoreAsInteger
score=InputBox("输入一个学生成绩")
SelectCasescore
CaseIs>=85
Printscore;"成绩等次为:
优秀"
CaseIs>=75
Printscore;"成绩等次为:
良好"
CaseIs>=60
Printscore;"成绩等次为:
中等"
CaseElse
Printscore;"成绩等次为:
不及格"
EndSelect
EndSub
3、功能:
制作一个简单的趣味心理测试小程序,心理测试的题目为下列红色字,把这个内容做成程序(也可以自己设计一个心理测试题目)
请你选择答案
你的新房子正在装潢,你会在哪一部分花最多的钱?
1、客厅的沙发、摆设。
2、卧室的床。
3、浴室、厨房。
选择1:
你天生有致富的命,可惜不太会把握,回想一下自己花钱的态度,别太注意‘表面功夫’,要考虑收支平衡!
其实你是财运不差的人,别一直偷懒,放弃可以进财的机会。
选择2:
你是个高品味的人,天生上流社会的人物,或许目前你的财务状况还谈不上大富大贵,但是你总是口袋快见底时又刚好有适时的补充。
你是穷不了的,只是还称不上是大富翁。
选择3:
你看起来实在不象是会成为大富翁的人,但是人不可貌相,你偏偏是最有机会成为大富翁的人。
你的财运很好,做什么工作都赚钱!
连你自己都不清楚是怎么变成大富翁的。
提示:
(1)可以textbox在显示结果,将它的multilines属性设为true可以显示多行文本
(2)可以定义3个string变量,存放3种选择的结果分析并根据用户的选择显示在textbox中
PrivateSubCommand1_Click()
DimaAsInteger,bAsString,cAsString,dAsString
a=Text1.Text
SelectCasea
Casea
Ifa=1Then
b="你天生有致富的命,可惜不太会把握,回想一下自己花钱的态度,别太注意'表面功夫',要考虑收支平衡!
其实你是财运不差的人,别一直偷懒,放弃可以进财的机会。
"
Text2.Text=b
ElseIfa=2Then
c="你是个高品味的人,天生上流社会的人物,或许目前你的财务状况还谈不上大富大贵,但是你总是口袋快见底时又刚好有适时的补充。
你是穷不了的,只是还称不上是大富翁。
"
Text2.Text=c
ElseIfa=3Then
d="你看起来实在不象是会成为大富翁的人,但是人不可貌相,你偏偏是最有机会成为大富翁的人。
你的财运很好,做什么工作都赚钱!
连你自己都不清楚是怎么变成大富翁的。
"
Text2.Text=d
EndIf
EndSelect
EndSub
4、功能:
每次点击“出题”按钮,随机出1道加法题目,参加运算操作数在1-100之间,用户在textbox输入答案。
点击“确定”按钮,利用msgbox给出输入的答案是正确或错误。
需要用到的知识点:
if……then……else结构,Msgbox,Randomize,rnd,Val,定义的加数变量a,b要设为全局变量。
DimaAsInteger,bAsInteger
PrivateSubCommand1_Click()
Randomize
a=Int(100*Rnd)+1
b=Int(100*Rnd)+1
Text1.Text=a
Text2.Text=b
EndSub
PrivateSubCommand2_Click()
DimcAsInteger
c=Text3.Text
Ifc=a+bThen
MsgBox"答案正确"
Else
MsgBox"答案错误"
EndIf
EndSub
5、从文本框TEXT1内任意输入一串字符,点击“选取字符”按钮,如果是TEXT1为空,则用MSGBOX提示“重新输入”,否则随机选一个不大于字符串总长度的数字作为选取的位置。
如果选中的位置字符是字母,并显示在text2内,如果选取的是数字,则输出到TEXT3,在TEXT4中显示哪个位置的字符被抽取。
IfTEXT1=””Then
MsgBox"重新输入"
Else
随机产生一个不大于字符串总长度(len(text1))的数(1-长度)
用MID取字符C
Ifc>="a"Andc<="z"Orc>="A"Andc<="Z"Then
Text2=c
Text3=""
Else
Text3=c
Text2=""
EndIf
EndIf
Text4=随机数
PrivateSubCommand1_Click()
DimaAsInteger,lenthAsInteger
DimstrAsString,letterAsString
IfText1=""Then
MsgBox"重新输入"
Else
str=Text1.Text
lenth=Len(str)
a=Int(lenth*Rnd)+1
letter=Mid(str,a,1)
Printletter
If(letter>="a"Andc<="z")Or(letter>="A"Andc<="Z")Then
Text2=letter
Text3=""
Else
Text3=letter
Text2=""
EndIf
EndIf
Text4=a
评论,观念,各有不同做好自己那份就好
EndSub