程序的选择结构-1

上传人:san****019 文档编号:68317585 上传时间:2019-01-10 格式:PPT 页数:43 大小:1.19MB
返回 下载 相关 举报
程序的选择结构-1_第1页
第1页 / 共43页
程序的选择结构-1_第2页
第2页 / 共43页
程序的选择结构-1_第3页
第3页 / 共43页
程序的选择结构-1_第4页
第4页 / 共43页
程序的选择结构-1_第5页
第5页 / 共43页
点击查看更多>>
资源描述

《程序的选择结构-1》由会员分享,可在线阅读,更多相关《程序的选择结构-1(43页珍藏版)》请在金锄头文库上搜索。

1、2.3 程序的选择结构,靖远一中信息组:冯璇,2.3.1从求一个数的绝对值开始,问题:求一个数a的绝对值,(2)设计算法。 输入数A 如果A=0,则这个数的绝对值为A 否则为A 输出结果 结束,求一个数A的绝对值,如果A=0,则这个数的绝对值为A,否则为A。,(1)分析问题。,(3)编写程序,Private Sub command1_click() Dim A As Single, b As Single A = InputBox(“a=“, “请输入a值“) If A = 0 Then b = A Else b = -A End If Print “a的绝对值为“; b End Sub,(4

2、)调试程序,程序的执行流程:,逐句演示程序的执行过程,体会条件语句的执行过程。与顺序结构相比较,选择结构就是程序的执行不再完全按照语句的顺序执行,而是根据某种条件是否成立来决定程序执行的走向,它进一步体现了计算机的智能特点。,如何实现判断和选择呢?在上述代码中,有一个用if开头的语句,这就是条件语句。,实例涉及到判断,这就是我们今天的新课内容选择结构,If A=0 then,2.3.2条件语句,1.格式: (1) If 条件 Then 语句组1 Else 语句组2 (2),其中,条件是一个逻辑表达式,语句组是一组VB的语句。,If 条件 Then 语句组1 Else 语句组2 End If,2

3、.条件语句的执行过程 条件语句的执行过程是:当条件成立时,执行Then后面的语句组1,否则执行语句组2。,在条件语句的基本格式中有时可以省略else和语句组2,这时条件语句的执行过程是当条件成立时,执行then后面的语句组1,否则退出条件语句,执行下面的语句。,单分支语法格式,单分支语法格式:,单行语法,多行语法,(1)If 条件 Then 语句组 (2)If 条件 Then 语句组 End If,这里的条件是关系表达式(、=、=)或逻辑表达式(and、or、not),其值只有真或假两种,当表达式的值为真时,视为条件成立。 语句可以是赋值语句(a=3)、输出语句(print、msgbox)、结

4、束语句(end)等。,(1)If 条件 Then 语句1 Else 语句2 (2)If 条件 Then 语句块1 Else 语句块2 End If,双分支语法格式:,注意:在if语句中else部分不需要填写条件。,条件满足,条件不满足,双分支语法格式,开始,结束,判断条件,语句块,真,开始,结束,判断条件,语句块1,真,假,语句块2,单分支结构,双分支结构,单分支结构只对判断条件为真的情况进行处理,双分支结构既对判断条件 为真的情况进行处理,同时也对判断条件为假的情况进行处理,所以双分 支结构也就多了else部分的内容。,对比分析,If then Else End if,If 语句的嵌套,IF

5、语句的嵌套 如果在If语句中(语句组1)或(语句组2)本身又是一个If语句,则称为If语句的嵌套。,If 条件 Then 语句组1 Else 语句组2 End If,If then Else End if,判断一个考试成绩,若大于等于60,则输出“顺利通过!”否则输出“继续努力!”,Private Sub Command1_Click() Dim s As Integer s = Val(InputBox(“请输入一个成绩:“) If s = 60 Then MsgBox “顺利通过!“ + Str(s), 0, “成绩“ Else MsgBox “继续努力!“ End If End Sub,

6、语法格式: MsgBox(信息内容+对话框类型,图标类型,对话框标题) 作用: MsgBox函数的作用是弹出一个对话框,在其中显示指定的数据和提示信息。,问题:,某商场为了对苹果进行促销,规定购买2千克以上可以在原价每千克1.5的基础上打8折。请设计一个程序计算购买x千克苹果的应付款。,(1)分析问题,设买苹果的重量为x千克,应付款为y元,如果x=2,则y=1.5*x*0.8,否则y=1.5*x,(2)设计算法, 输入x的值 如果x=2,则y=1.5*x*0.8 否则y=1.5*x 输出y的值,(3)编写程序,Private sub command1_click() Dim x as sing

7、le x=Inputbox(“请输入购买苹果的重量”) if x=2 then y=1.5*x*0.8 else y=1.5*x end if Print “应付款”;y;“元” End sub,(4)调试程序,在分支语句中,程序执行一个分支后,其余分支不再执行;,总结,If Then End If,If Then Else End If,单分支结构:,双分支结构:,练习:,凡在商场消费满500元以上(含500元),享受9折优惠;消费满1000元以上(含1000元),享受8折优惠;消费在500元以下不优惠。输入消费金额,计算出实收金额。,Private Sub command1_click()

8、 Dim m As Single,y as single 消费金额 m = Val(inputbox(“m=”,”输入消费金额”) If m = 1000 Then y = m * 0.8 Else If m = 500 And m 1000 Then y = m * 0.9 Else y = m End If End If print”应付”;y;”元” End Sub,简答题:,程序如下:,Private Sub command1_click() Dim a As Single a = InputBox(“a=“, “输入“) If a = 100 Then y = 0.8 * a Els

9、e y = 0.9 * a End If Print y End Sub,阅读程序框图,若输入m=4,n=3, 则输出a= ,i= 。,在线测试练习,1语句If x=1 Then y=1,下列说法正确的是( )。 A、x=1和 y=1 均为赋值语句 B、x=1和 y=1均为关系表达式 C、x=1为关系表达式,y=1为赋值语句D、x=1为赋值语句,y=1为关系表达 2. 2.电梯的最大容量为13人,在此范围内电梯能正常运行,超出了这个范围电梯将发出警报。( ) Dim a as integer a=val(inputbox(“请输入进入电梯的人数”) if a=13 then print “正常

10、运行” else print “发出警报” end if A.if.thenend ifelse B.thenifelseend if C.ifthenelseend if D.ifelsethenend if,C,C,3.以下程序段运行后,分别输入5和6,则输出字符的排列顺序是( ) I=val(inputbox(“请输入I的值”) If I 6 then Print “#” ; Else Print “*” End if A.*# B.#* C.# D.*,在线测试练习,B,在vb程序中把代码补充完整并调试运行,得出结果后再选择答案 。 4.走路可以减肥,平地甩手走20分钟内(含20分钟)

11、消耗的能量为6卡每分钟,超过20分钟消耗的能量为7.9卡每分钟。走路的分钟数43分钟,输出共消耗的能量。 Dim t _,n as single t=val(inputbox(“请输入t的值”) if t=20 then n=6*t else n=6*20+(t-20)*7.9 end if print “n=”;n A258卡 B.339.7卡 C.439.7卡 D.301.7卡,在线测试练习,D,3.关系表达式,在程序中,程序的第三行是一个条件语句,其中的条件A=0表达式,一般称为关系表达式,关系表达式是用关系运算符连接起来的式子。,关系运算符号有:,当关系表式成立时其值为真(Ture),

12、当表达式不成立时其值则为假(False);关系表达式的值既不是数值型量,也不是字符型量,而是一种新的数量类型逻辑型。逻辑型只有两个可能的值:假(False)和真(Ture)。 关系表达式的值定义如下: (1)对数值型的数据比较,是按照数值的大小来进行比较。如136的值为真。 (2)对其它类型数据的比较,则按照其序号进行比较。如DB其值为假。,4.逻辑表达式,在实际问题中,对于一些复杂的条件,还需要几个关系表达式组合起来才能表示。例如,条件2X9就需要用2X和X9这两个表达式来表示.将多个关系表达式用逻辑运算符连接起来的式子称为逻辑表达式,逻辑表达式的运算值为逻辑型。 逻辑运算符有: Not(非

13、)取操作数相反的值。即当操作数为假时,结果 为真;当操作数为真时,结果为假。 And(与)当两个操作数都为真时,结果才为真。 Or(或)当两个操作数都为假时,结果才为假。,逻辑运算符的运算规则,逻辑运算符: AND(与):所联结的关系运算式必须同时成立才为真; OR(或):所联结的关系运算式只要有一个为真,即为真; NOT(非):将原来的逻辑值取反。,(b0) and (b10),a10,(a0) and (a mod 2 =0),Not(a0) and (a mod 2 =0),5.逻辑运算的顺序,(1)当条件中只有逻辑运算符时,运算的顺序为Not、And、Or (2)当条件中既有算术运算符

14、,又有关系运算符和逻辑运算符时,运算顺序是:算术运算符,关系运算符,逻辑运算符 例如: a+bc+d and a=5 or not c0 or d0 当a=5,b=7,c=2,d=1时,运算结果是真。,逻辑表达式的运算次序,一个逻辑表达式一般包括逻辑运算符、关系 表达式或其他运算量: 算术运算 关系运算 逻辑运算 (NOT AND OR),如以下表达式,其中a=5,b=3,c=-2,d=8 a-c b+d OR cd AND ABS(c) =a OR NOT c d+5 711 OR cd AND 2=a OR NOT c13 假 OR 假 AND 假 OR NOT 假 假 OR 假 OR 真

15、,真,第一课时完,1.表达式4+7-6+1 and 4=4运行的结果是: 2.有如下vb程序段: a=2 b=5 if ab then m=a else m=b 该程序运行后,变量m的值为:,点击会考:,在分支语句中,程序执行一个分支后,其余分支不再执行;,总结,If Then End If,If Then Else End If,单分支结构:,双分支结构:,If then Else End if,If then Else End if,IF语句的嵌套:,点击会考:,在左边的文本框输入一个100以内的正整数(包括100不包括0),单击“判断”按钮, 在右边的文本框中显示是“奇数”还是“偶数”,

16、输入大于100的整数则显示“输入 的整数不能超过100”。,x 100,x Mod 2,End If,变量 = 对象.属性,对象名.属性名 = 属性值,练习:,1.输入三角形的三条边长,首先判断给出的三条边能否构成三角形(三角形的两边之和大于第三边),如可以,则计算并输出该三角形的面积;否则输出“不能构成三角形“。,Private Sub Command1_Click() Dim a, b, c, p, s As Single a = Val(Text1.Text) b = Val(Text2.Text) c = Val(Text3.Text) p = (a + b + c) / 2 If (a + b) = c Or (a + c) = b Or (b + c) = a Then Print “不能

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号