-
【转载】理解VB中选择语句Select Case结构的最好例子
2015-12-23 11:31:361.Select Case结构格式: Select Case e Case e1 A组语句 Case e2 B组语句 …… Case Else n组语句 End Select 2.说明 ?e为测试表达式,可以是算术表达式或字符表1.Select Case结构格式:
Select Case e
Case e1
A组语句
Case e2
B组语句
……
Case Else
n组语句
End Select2.说明
?e为测试表达式,可以是算术表达式或字符表达式,其值应是数字或字符型
?e1、e2等是测试项,取值必须与测试表达式的值类型相同,常用形式为:
?具体取值,用逗号隔开,如:1,5,9
?连续的范围:界1 TO 界2 ,如:12 To 20
?满足某个条件:Is运算符,如:Is>10
?三种形式可以组合使用补充:关于is的用法
1、case is<5 ,is>10 正确,表示或的关系
case is>5 and is<10 用来表示并的关系不正确
若要用is表示并的关系,可以在select case中再嵌入select case
如:
Option Explicit
Dim a
Private Sub Form_Click()
a = Val(InputBox("成绩"))
Select Case a
Case Is > 80
Select Case a
Case Is < 90
Print "良"
End Select
End Select
End Sub
2、如果想用关系运算符来表示范围的话,可以按照顺序写select case事件。执行到满足条件的语句就会输出。
如:case is>90
print a
case is>80
print b
case is >70
print c
....
end select
3、组合示例
Select Case a
Case Is > 100, 5, 0 To 2, 20 To 30
Print "真棒"
End Select3.例题
题目:根据学生的成绩,判断其等级:
条件 成绩≥90 80≤成绩<90 70≤成绩<80 60≤成绩<70 成绩<60 等级 优秀 良好 中等 及格 不及格 程序界面:程序代码:
Option Explicit
Private Sub Command1_Click()
Dim x As Integer '定义变量x 为整形数
x = Val(Text1.Text) '把文本框Text1里显示内容通过Val函数转成数值型数据再赋值给变量x
Select Case x '测试表达式的值为x
Case Is >= 90 '测试表达式的值x大于等于90情况下
Text2.Text = "优秀" '文本框Text2中显示“优秀”
Case 80 To 90 '测试表达式的值x在80至90情况下
Text2.Text = "良好" '文本框Text2中显示“良好”
Case 70, 71, 72, 73, 74, 75, 76, 77, 78, 79 '测试表达式的值x为70、71、72、73、74、75、76、77、78、79情况下
Text2.Text = "中等" '文本框Text2中显示“中等”
Case 60, 61, 62, 63 To 66, Is >= 67 '测试表达式的值x为60、61、62、63、在64至66情况下、大于等于67的情况下
Text2.Text = "及格" '文本框Text2中显示“及格”
Case Else '测试表达式的值x在其它情况下
Text2.Text = "不及格" '文本框Text2中显示“不及格”
End Select
End Sub'以下代码是清除文本框Text1、Text2中所显示的内容,且将焦点放在文本框Text1上
Private Sub Command2_Click()
Text1.Text = ""
Text2.Text = ""
Text1.SetFocus
End Sub'以下代码是程序退出
Private Sub Command3_Click()
End
End Sub -
VB编程:SelectCase多分支选择结构判断成绩优良-11
2016-11-16 15:27:46运行效果: 程序代码: Private Sub Command1_Click() If IsNumeric(Text1.Text) ... Select Case CInt(Text1.Text) Case Is >= 85 Label2.Caption = "成绩:" &am...程序代码:Private Sub Command1_Click()If IsNumeric(Text1.Text) ThenSelect Case CInt(Text1.Text)Case Is >= 85Label2.Caption = "成绩:" & "优秀"Case 70 To 84Label2.Caption = "成绩:" & "良好"Case 60, 61, 62, 63, 64, 65, 66, 67, 68, 69Label2.Caption = "成绩:" & "及格"Case ElseLabel2.Caption = "成绩:" & "差"End SelectEnd IfEnd Sub程序小结:1、IsNumeric()函数含义“是数字”,即判断是否为数字;2、CInt():强制转换为整型,小数部分四舍五入;3、Case分支语句后面可以使用的三种形式:“Is”,“To”,“,”。 -
VB编程:SelectCase多分支选择结构实例测试生肖运势-13
2016-11-17 15:09:09一、运行效果 ...SelectCase多分支选择结构语句看着有点头晕,主要是字太多,可以适当精简。 四、程序附件 源程序下载地址:http://pan.baidu.com/s/1slTd7Xj 密码:58id二、程序代码(窗体模块)Private Sub Command1_Click()Dim iNum As Integer '存储余数Dim i As Integer '循环计数For i = 0 To Img.UBound '循环Img(i).BorderStyle = 0 '所有imageBorderStyle都为0Next iIf Text1.Text <> "" And IsNumeric(Text1.Text) Then '判断输入是否为空,是否为数字If Len(Text1.Text) < 5 Then '判断输入是否是小于5的年代数字iNum = QueryZodiac(Text1.Text).iMod '获取余数Img(iNum).BorderStyle = 1 '设置下标为余数的image边框为1Label2.Caption = QueryZodiac(Val(Text1.Text)).sAnimal & "," & QueryZodiac(Val(Text1.Text)).sDescriptionElseText1.Text = "年代长度超过四位"End IfElseText1.Text = "请输入出生年代!"End IfEnd SubPrivate Sub Img_Click(Index As Integer)Dim i As IntegerFor i = 0 To Img.UBound 'image图像控件数组上标UBoundImg(i).BorderStyle = 0Next iImg(Index).BorderStyle = 1Label2.Caption = QueryZodiac(Index).sAnimal & "," & QueryZodiac(Index).sDescriptionEnd Sub(标准模块)Type Zodiac '自定义数据类型iMod As Integer '余数sAnimal As String * 1 '属相sDescription As String * 300 '属相描述End TypeFunction QueryZodiac(iYear As Integer) As ZodiacSelect Case iYear Mod 12 '取余函数,确定生肖Case 0QueryZodiac.iMod = 0QueryZodiac.sAnimal = "猴"QueryZodiac.sDescription = "“猴为人祖”的传说颇多。《山海经》载,“其状如禺而文臂,豹虎而善投,名曰举父“,可见夸父(即举父)形象实乃猴子。成都地区神话认为盘古开天地,猴群中的伏羲女娲繁衍出人类。古吐蕃在《西藏王统记》中载其先祖系狲猴所变。羌族神话《木姐珠和冉必娃》,冉必娃用火烧掉全身猴毛成了美男子。"Case 1QueryZodiac.iMod = 1QueryZodiac.sAnimal = "鸡"QueryZodiac.sDescription = "《韩诗外传》概括鸡的“五德”,“头戴冠,文也;足搏距,武也;见敌敢干,勇也;见食相呼,义也;守夜不失时,信也”。故鸡有德禽的雅号。玉兔与月亮,金乌与太阳常相提并论。《淮南子· 精神》说“日中有蹬乌”,即三足乌:日乌、金乌、金鸦。明代杨慎的《艺林伐山》说“日中有金鸡”,日与月,太阳属东方酉鸡却位于西;月亮属西方卯兔却居于东,原因是“日月阴阳互藏其宅也”。李白的《梦游天姥吟留别》中吟“半壁见海日,空中闻天鸡。”"Case 2QueryZodiac.iMod = 2QueryZodiac.sAnimal = "狗"QueryZodiac.sDescription = "《汉书》载,帝高辛氏有狗名盘瓠,取犬戎吴将军首级被赐以少女,“随盘瓠升南山产子,男女十二,后繁盛也“。《搜神记》扩充说盘瓠是皇后耳朵跳出的金虫变成。西南的苗、畲、瑶、黎、侗、壮、佤等民族,也传说盘瓠是族群始祖。少数民族还有狗取谷种的传说,哈尼族认为,天神女儿把五谷带到人间,被贬成狗。"Case 3QueryZodiac.iMod = 3QueryZodiac.sAnimal = "猪"QueryZodiac.sDescription = "猪有“乌金”之名,父系氏族公社时期,猪是财富标志,临夏大何庄的墓葬有三十六块猪骨陪葬。豕是士庶以下平民的祭品,以豕为之,陈豕于室,合家而祀,即“家”字。畜牧户供奉豕神、栏神。豕神本职厕神,南方农村厕所和猪圈多合二为一,故厕神多兼职圈神。厕神即紫姑神,或死于厕的西汉戚夫人。猪栏神是姜太公,封神时姜太公把为自己预留的东岳神让给黄飞虎,自己当猪栏神。浙西一带常在猪栏张贴黄纸,“姜太公在此、百无禁忌“。"Case 4QueryZodiac.iMod = 4QueryZodiac.sAnimal = "鼠"QueryZodiac.sDescription = "老鼠偷吃粮食,证明“仓鼠有余粮”,说明这户富足,家中鼠多象征富裕。清代方叡颐《梦园丛说》记载粤东一种“钱鼠”玩具,叫声好像数钱。老鼠能发出数钱般的声音。旧时湖北等地以此声为吉祥之兆。浙江一带却认为“前半夜主得财,后半夜主散财”,而崇明一带则认为此声预示祸灾祸。"Case 5QueryZodiac.iMod = 5QueryZodiac.sAnimal = "牛"QueryZodiac.sDescription = "因为牛耕,中国人对牛感情渐深,把诸如憨厚勤劳,不求回报等优秀品质附在牛身上,鲁迅就以“俯首甘为孺子牛”言志。《大戴礼记·曾子天圆》:“诸侯之祭,牛,曰太牢。”《清史稿·礼志一》:“太牢,牛一,羊一,豕一”,牛都是最尊贵的祭祀品,是天子祭祀社稷和天地之用。春秋战国的诸侯会盟,国君执牛耳割血,涂在嘴里。"Case 6QueryZodiac.iMod = 6QueryZodiac.sAnimal = "虎"QueryZodiac.sDescription = "虎是百兽之王,寅虎相配,甲骨文“寅”字如箭矢状,《说文》中“寅”意为“阳气上升,虽上有冻土,必破土而出”,与虎的凶猛刚阳之气契合。如果说商代铜器虎食人卣反映古人对虎的畏惧,那在战争的虎烙印,则代表对征服的渴望,行军打白虎幡旗,晓勇者为“虎将”,调兵用虎符,兵器有虎纹……"Case 7QueryZodiac.iMod = 7QueryZodiac.sAnimal = "兔"QueryZodiac.sDescription = "嫦娥奔月传说源于《淮南子.览冥训》,嫦娥在月中有玉兔相伴。兔是月的象征。《春秋运斗枢》说:“行失瑶光,则月出兔”。《乐府诗集》有“白兔常跪捣药虾蟆九”的诗句,晋朝傅玄在《拟天问》中吟:“月中何有?白免捣药。”"Case 8QueryZodiac.iMod = 8QueryZodiac.sAnimal = "龙"QueryZodiac.sDescription = "龙的来历说法颇多,以闻一多推断,蛇为图腾的氏族先后兼并许多别的图腾氏族,形成“以大蛇为主体,兼有马的头、鬣的尾,鹿的角,狗的爪,鱼的鳞和须混合而成的龙图腾”。"Case 9QueryZodiac.iMod = 9QueryZodiac.sAnimal = "蛇"QueryZodiac.sDescription = "蛇多以负面形象出现。“人心不足蛇吞象”形容蛇的贪婪;《农夫和蛇》写出蛇的狡猾和冷血;狠毒之人被形容为“蛇蝎心肠”。"Case 10QueryZodiac.iMod = 10QueryZodiac.sAnimal = "马"QueryZodiac.sDescription = "作为六畜之首,马除用作交通运输,还是强大的军事装备。战国以“万乘之国”,“千乘之国”等马拉战车的数量来形容国力强弱。历代君王将帅以拥有骏马为荣。周穆王拥八骏。汉武帝为取得大宛汗血宝马两次远征大宛。唐太宗钟爱“六骏”, 飒露紫、拳毛騧、青骓、什伐赤、特勒骠、白蹄乌,刻在昭陵以表彰战功。还有秦始皇的“追风”、“白兔”,项羽的“乌骓马”,刘备的“的卢”,关羽的赤兔,等等。"Case 11QueryZodiac.iMod = 11QueryZodiac.sAnimal = "羊"QueryZodiac.sDescription = "古人视羊为“德畜”,善群、好仁、死义、知礼。善群,羊喜欢聚群。好仁指羊善良,有角但不好斗。死义指羊被宰杀时安静,视死如归,故有宣王“以羊易牛”的故事。知礼指羊知恩,羊羔跪乳象征孝道。"End SelectEnd Function三、程序总结1、为了让Text1.Text文本框在加载的时候,光标就会出现在里边,可以把它的TabIndex属性设为0;
2、这个例子再次体现了控件数组处理问题的优越性;3、自定义数据类型。。。还没怎么了解;SelectCase多分支选择结构语句看着有点头晕,主要是字太多,可以适当精简。四、程序附件源程序下载地址:http://pan.baidu.com/s/1slTd7Xj 密码:58id -
VB编程:SelectCase多分支选择结构判断成绩优良-11_彭世瑜_新浪博客
2016-11-16 15:27:46运行效果: 程序代码: Private Sub Command1_Click() If IsNumeric(Text1.Text) Then ... Select Case CInt(Text1.Text) Case Is >= 85 Label2.Caption = "成绩:" & "优秀" ...程序代码:Private Sub Command1_Click()If IsNumeric(Text1.Text) ThenSelect Case CInt(Text1.Text)Case Is >= 85Label2.Caption = "成绩:" & "优秀"Case 70 To 84Label2.Caption = "成绩:" & "良好"Case 60, 61, 62, 63, 64, 65, 66, 67, 68, 69Label2.Caption = "成绩:" & "及格"Case ElseLabel2.Caption = "成绩:" & "差"End SelectEnd IfEnd Sub程序小结:1、IsNumeric()函数含义“是数字”,即判断是否为数字;2、CInt():强制转换为整型,小数部分四舍五入;3、Case分支语句后面可以使用的三种形式:“Is”,“To”,“,”。 -
VB编程:SelectCase多分支选择结构实例测试生肖运势-13_彭世瑜_新浪博客
2016-11-17 15:09:09一、运行效果 二、程序代码 (窗体模块) Private Sub Command...SelectCase多分支选择结构语句看着有点头晕,主要是字太多,可以适当精简。 四、程序附件 源程序下载地址:http://pan.baidu.com/s/1slTd7Xj 密码:58id -
单分支 两路分支和多分支的if结构_VB之选择结构程序设计
2020-11-24 12:38:03选择结构的作用是使程序依照条件...Select Case; iif函数1、单分支结构If...Then.首先判断表达式的值,如果是True,就执行then后的一条或多条语句,然后选择结构结束。如果是False,不执行语句,选择结构结束。继续执... -
数据结构 VB语言 第3章 程序基本控制结构.ppt
2020-05-11 09:01:16第3章 程序基本控制结构 本章学习目标 掌握顺序结构程序设计的特点 掌握If.Then.Else语句的语法格式及执行特点 掌握If.Then.Else语句的嵌套 掌握多条件选择结构Select Case语句格式及执行特点 熟练掌握For.Next循环... -
VB选择结构 习题1.ppt
2020-10-18 13:29:41VB选择结构 习题1 4下面程序段的显示结果是 dim x x=int(rnd)+4 select case x case 5 print"优秀" case 4 print"良好" case 3 print"通过" case else print"不通过" end select A.优秀 B.良好 C.通过 D.不通过 5... -
云炬VB开发笔记 4选择结构
2021-02-19 10:01:391三角形问题—— IF语句 ...—— Select Case 语句 3闰年问题——选择结构的嵌套 4个人简历——单选、复选和框架控件 5成绩转换—— 综合应用 6购物优惠—— 程序调试 ... -
vb教材笔记_VB学习笔记(VB语言)
2020-12-19 05:14:55Print “a=2”Case ElsePrint “a does not equal to 1 or 2.”End Select五、循环语句循环结构是计算机语言里一种重要的结构,它的应用广泛,最简单的例子是累加器的作用,还可以用于穷举法,更直观的例子是把某件... -
VB转学VC的switch困惑
2008-12-30 20:13:00刚从VB转学VC,发现但switch语句与select case 很相似,其实它们有很大的...看不去不如VB灵活,其实这样的结构目的是通过构造特殊的二进制编码并利用寄存器技术提高效率,而VB中的select case语句最终还是转化为if el -
VB 控件数组画图.rar
2019-07-10 09:37:47Select Case Index 'index代表控件数组的索引号,用此分支结构判断用户单击了哪个按钮 Case 0 '用户单击控件数组里第一个命令按钮 Picture1.Print "画直线" Picture1.Line (2, 2)-(7, 7) '在图片框上画直线 ... -
vb贪食蛇源代码
2012-04-21 16:52:54vb小游戏定义蛇的运动速度枚举值 Private Enum tpsSpeed QUICKLY = 0 SLOWLY = 1 End Enum '定义蛇的运动方向枚举值 Private Enum tpsDirection D_UP = 38 D_DOWN = 40 D_LEFT = 37 D_RIGHT = 39 End Enum '... -
VB常见错误和难点分析
2018-09-10 19:41:42同样对Select Case语句也应有与其相对应的End Select语句。 2.多边选择ElseIf关键字的书写和条件表达式的表示 多边选择ElseIf子句的关键字ElseIf之间不能写有空格,即不能写成Else If。 在多个条件表... -
VB6.0动态加载ActiveX控件漫谈
2012-09-29 17:13:46VBControlExtender和 EventInfo相结合,采用Select Case 就可以预先 将不同类对象的事件放置一起,各自独立运作。将上面的代码改写一下就能提供Click 事件了: ---- Dim WithEvents oControl As VBControlExtender ... -
VB新手入门之二
2007-02-20 12:18:00lt;数字类型变量>,值为1的返回值,值为2的返回值…)Switch(,条件表达式1为True时的值[,,条件表达式2为True时的值…])3.3 常见错误和难点分析1....同样对Select Case语句也应有与其相对应的End -
数据库之SQL(Transact-SQL分支结构)
2018-07-29 20:22:07大家还记得VB中的分支结构是什么吗? ①单行结构条件语句 if....then...(else...) ②块结构条件语句 if...... elseif..... else..... end if ③多分支选择语句 select case <测试表达式> ... -
VB.NET 入门经典 (第三版)
2009-07-29 16:56:264.3.2 不区分大小写的Select Case语句 91 4.3.3 多重选择 93 4.3.4 Case Else语句 95 4.3.5 Select Case中的不同数据类型 96 4.4 循环 96 4.4.1 For…Next 循环 96 4.4.2 For Each…Next循环 100 4.4.3 Do…Loop循环... -
VB.NET 入门经典 (第三版)续传
2009-08-06 16:26:224.3.2 不区分大小写的Select Case语句 91 4.3.3 多重选择 93 4.3.4 Case Else语句 95 4.3.5 Select Case中的不同数据类型 96 4.4 循环 96 4.4.1 For…Next 循环 96 4.4.2 For Each…Next循环 100 4.4.3 Do…Loop循环... -
VB.NET 入门经典 (第三版)续传4
2009-08-13 15:52:584.3.2 不区分大小写的Select Case语句 91 4.3.3 多重选择 93 4.3.4 Case Else语句 95 4.3.5 Select Case中的不同数据类型 96 4.4 循环 96 4.4.1 For…Next 循环 96 4.4.2 For Each…Next循环 100 4.4.3 Do…Loop循环... -
第七章 第二节 多分支控制结构
2016-09-30 21:54:47一、在vb中,多分支结构程序通过情况语句来实现。情况语句来实现。情况语句也成为select case 语句或case 语句,它根据一个表达式的值,在一组相互独立的可选语句序列中挑选要执行的语句序列。 情况语句的一般... -
精通sql结构化查询语句
2012-11-03 17:35:29SQL查询篇第6章 简单的SELECT语句查询 6.1 查询的基本结构 6.1.1 了解SELECT语句 6.1.2 SELECT语句的语法格式 6.1.3 SELECT语句的执行步骤 6.2 简单的查询语句 6.2.1 查询表中指定的字段 6.2.2 查询所有的字段 6.2.3... -
四则运算的简单计算器
2011-04-06 12:26:37vb程序设计技巧中的控件数组的应用,select case 分支结构的掌握 -
常见错误和难点分析
2007-11-23 16:20:00轉自:http://wwww.hyit.edu.cn/edu/vb/study/index.htm 常见错误和难点分析 1.在选择结构中缺少配对的结束语句 ...同样对Select Case语句也应有与其相对应的End Select语句。 2.多边选择ElseIf关键字... -
BASCOM-AVR AVR开发平台
2012-02-26 23:14:10DO-LOOP WHILE-WEND SELECT-CASE 程序设计变量名和语句标示符长达 32 个字符,有位(Bit) 字节(Byte) 整型(Integer) 字(Word) 长型(Long) 字符串(String)多种类型的变量编译产生 的运行代码可在所有带内部存储器的 AVR... -
标准MFC WinSock ActiveX控件开发实例(II)高级篇
2009-07-07 09:56:40另外还提供该控件在VC,VB下的调用方式以及相关数据的处理。 关键字:ActiveX,Socket,VARIANT, SAFEARRAY,BSTR。 回顾:在上一篇文章《标准MFC WinSock ActiveX控件开发实例》中我们详细介绍了控件的开发过程... -
软件工程工资管理系统
2009-07-01 11:34:03然后再自底而上地设计概念结构,最终将各个局部应用的概念结构集合成为全局概念结构。 3.2概念结构E-R图 通过对局部应用的选择,逐一设计出分E-R图,并对各个分E-R图进行合并,生成初步E-R图,消除不必要的系统冗余... -
Visual Basic 2010入门经典(第6版)完整版 之1/2
2013-04-29 09:44:394.3 select case语句 4.4 循环 4.5 小结 4.6 练习 第5章 处理数据结构 5.1 数组 5.2 枚举 5.3 常量 5.4 结构 5.5 数组列表 5.6 集合 5.7 使用散列表创建查询表 5.8 高级数组操作 5.9 小结 5.10 练习 ... -
Visual Basic 2010入门经典(第6版)完整版 之2/2
2013-04-29 14:59:584.3 select case语句 4.4 循环 4.5 小结 4.6 练习 第5章 处理数据结构 5.1 数组 5.2 枚举 5.3 常量 5.4 结构 5.5 数组列表 5.6 集合 5.7 使用散列表创建查询表 5.8 高级数组操作 5.9 小结 5.10 练习 ... -
Visual Basic 2010中文版从入门到精通.pdf
2012-08-12 18:36:243.3.2 情况语句(Select Case语句) 57 3.4 循环结构 59 3.4.1 For…Next循环语句 59 3.4.2 While循环语句 60 3.4.3 Do循环语句 61 3.4.4 枚举循环语句 64 3.4.5 循环嵌套语句 64 3.5 其他流程控制语句 65 ...