chap5(选择结构程序设计)_第1页
chap5(选择结构程序设计)_第2页
chap5(选择结构程序设计)_第3页
chap5(选择结构程序设计)_第4页
chap5(选择结构程序设计)_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1Visual BasicVisual Basic程序设计教程程序设计教程第五章第五章 选择结构选择结构 程序设计程序设计2Visual BasicVisual Basic程序设计教程程序设计教程本章主要内容If语句单行结构If语句块结构块结构IfIf语句语句IIfIIf函数函数Select Case语句3Visual BasicVisual Basic程序设计教程程序设计教程单行结构条件语句格式:格式:If If Then Then 1 Else Else 2 功能:功能:若条件成立若条件成立( (即:即:结果结果非非0 0) ),则执行,则执行“语句语句1 1”,否则执行,否则执行“语句语

2、句2 2”。通常是关系或逻辑表达式“语句1”和“语句2”可以是简单句或复合句4Visual BasicVisual Basic程序设计教程程序设计教程选择结构执行流程表达式语句1语句2假真表达式语句1假真单分支单分支-ElseElse部分没有部分没有时的执行流程时的执行流程双分支执行流程双分支执行流程5Visual BasicVisual Basic程序设计教程程序设计教程“条件”表达式分类关系表达式 如 :a8、b8) and (b b Then print b, a else Print a, b End Sub7Visual BasicVisual Basic程序设计教程程序设计教程例

3、有函数如下,要求输入x, 输出Y值。Private Sub form_Click() Dim x as single, y as single x=inputbox(请输入请输入x的值的值) if x0 then y=1 else if x=0 then y=0 else y=-1 print x= , x, Y= , Y End Sub1(x0)0 (x=0)-1 (x0)Y=If语句的嵌套8Visual BasicVisual Basic程序设计教程程序设计教程块结构条件语句格式:格式:if 条件条件1 then elseif 条件条件2 then elseif 条件条件3 then .

4、else end if执行流程:执行流程:(1)若若“条件条件1”成立,成立,执行执行“语句块语句块1”;(2)否则若否则若“条件条件2”成成立,执行立,执行“语句块语句块2”;(3)(4)若上述条件均不成若上述条件均不成立,执行立,执行“语句块语句块n”。9Visual BasicVisual Basic程序设计教程程序设计教程说明Elseif 子句的数量没有限制。子句的数量没有限制。Elseif 子句和子句和else子句都是可选的。子句都是可选的。10Visual BasicVisual Basic程序设计教程程序设计教程块结构 VS. 单行结构 区别:区别:then后面的语句是否和后面的

5、语句是否和then在同一行。在同一行。联系:任何单行结构的条件语句均可改成块结构。联系:任何单行结构的条件语句均可改成块结构。 例如例如: if hour(time()=12 then text1.text= morning! If hour(time()= 90 Then strx$ = 优秀优秀ElseIf score = 80 Then strx$ = 良好良好ElseIf score = 70 Then strx$ = 中等中等ElseIf score = 60 Then strx$ = 及格及格Else strx$ = 不及格不及格End IfPrint strx$End Sub12

6、Visual BasicVisual Basic程序设计教程程序设计教程例例 输入两个不相等的数,按由小到大顺序输出。输入两个不相等的数,按由小到大顺序输出。 Private Sub Command1_Click() Dim a!, b!,t! a = InputBox(请输入第一个数请输入第一个数) b = InputBox(请输入第二个数请输入第二个数) If a b Then t=a : a=b : b=t 交换交换a和和b中存放的值中存放的值 end if print a, b End Sub34ab t34313Visual BasicVisual Basic程序设计教程程序设计教程

7、 iif函数 Immediate if -“if-then-else”的简写版格式:格式: iif(条件,条件,True部分,部分,False部分部分)功能:当条件为真时,返回功能:当条件为真时,返回true部分的值,否则,返部分的值,否则,返回回False部分的值。部分的值。 例例: d=iif(x0,1,0 ) if x0 then d=1 else d=0 if x0 then d=1 else d=0 end if 表达式表达式14Visual BasicVisual Basic程序设计教程程序设计教程情况语句select case case case case else end Se

8、lect数值、字符串表数值、字符串表达式达式可以是可以是一行或一行或多行语多行语句句“测试表达式测试表达式”的的值与值与“表达式表列表达式表列”的值均不匹配,则的值均不匹配,则执行执行case else 子子句句与与测试表达式测试表达式的的类型一致类型一致15Visual BasicVisual Basic程序设计教程程序设计教程执行流程表达式表列表达式表列1表达式表列表达式表列2 else 测试表达式测试表达式 语句块语句块1 语句块语句块2 语句块语句块n 16Visual BasicVisual Basic程序设计教程程序设计教程 “表达式表列表达式表列”(域值)的形式(域值)的形式q

9、, 判断判断“测试表达式测试表达式” 的值是否与其中之一相同的值是否与其中之一相同 如:如: case 2,4,6,8q to 判断判断“测试表达式测试表达式”的值是否落在表达式的值是否落在表达式1和表达式和表达式2之间之间 (含自身)(含自身) 如如: case 2 to 8 ( 5 to 1、 “dvark” to “kear” )q is 判断判断“测试表达式测试表达式”的值是否满足的值是否满足“关系表达式关系表达式”指定条件。指定条件。 注意,注意, 此处只能是简单的条件,不能用逻辑运算符将几个此处只能是简单的条件,不能用逻辑运算符将几个 简单条件组合。简单条件组合。 如:如: cas

10、e is 2 17Visual BasicVisual Basic程序设计教程程序设计教程例 输入成绩,然后在文本框中显示其等级(不及格、及格、中等、良好、优秀)。 Private Sub Command1_Click()Dim score As Integer, strx As Stringstart: score = InputBox(请输入学生成绩请输入学生成绩)Select Case score Case 0 To 59 : strx$ = 不及格不及格 Case 60 To 69: strx$ = 及格及格 18Visual BasicVisual Basic程序设计教程程序设计教程

11、 case 70 To 79:strx$ = 中等 case 80 To 89:strx$ = 良好 case 90 To 100:strx$ = 优秀 case else msgBox 输入范围:0100 , 0, 错误提示 goTo start 关于else的语句块end selectText1.Text = score Text2.Text = strx$End Sub可以交换goto start和end select的位置吗?19Visual BasicVisual Basic程序设计教程程序设计教程例 运输费用的计算:距离越远,每公里运价越低。 S250(公里) , 折扣=0% 25

12、0=s500 , 折扣=2% 500=s1000 , 折扣=5% 1000=s2000 , 折扣=8% s =2000 , 折扣=10%设每公里每吨运价为p,重量为w,折扣为d,运费为f=p*w*s*(1-d) 。 输入p,w,s, 求f。Private Sub Command1_Click( )Dim p!, w!,s!,f!,d!p=inputbox(每吨运价p为: )w= inputbox(运送货物重量w为: )s= inputbox(运送距离s为: )20Visual BasicVisual Basic程序设计教程程序设计教程select case s case is250 : d=0 case is500 : d=0.02 case is1000 : d=0.05 case is2000 : d=0.1end selectf=p*w*s*(1-d)Text1.text=str$(p) :

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论