《vb第2版》课件第4章选择结构.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《《vb第2版》课件第4章选择结构.ppt》由用户(momomo)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- vb第2版 vb 课件 选择 结构
- 资源描述:
-
1、第第4章选择结构章选择结构4.1运算符与表达式运算符与表达式4.2顺序结构顺序结构4.3 If语句语句4.4多条件选择语句多条件选择语句Select Case4.5 选项按钮选项按钮4.6 复选框复选框4.1 运算符与表达式运算符与表达式运算(即操作)是对数据的加工。最基本的运算形式运算(即操作)是对数据的加工。最基本的运算形式常常可以用一些简洁的符号来描述,这些符号称为运算符常常可以用一些简洁的符号来描述,这些符号称为运算符或操作符。被运算的对象或操作符。被运算的对象数据,称为运算量或操作数。数据,称为运算量或操作数。由运算符和运算量构成的式子,目的是求出一个新的数值。由运算符和运算量构成的
2、式子,目的是求出一个新的数值。这种式子称为表达式。表达式是由常量、变量、函数、及这种式子称为表达式。表达式是由常量、变量、函数、及括号组成。括号组成。例如:例如:x+3 t+Sin(a)pi*r2 100 b “I am”&“student”等都是有效的表达式。等都是有效的表达式。4.1 运算符与表达式运算符与表达式七种算术运算符及其优先级如下表所示七种算术运算符及其优先级如下表所示运算符运算符运算运算示例示例示例结果示例结果 乘方乘方23238 8-取负取负-a(a=2)-a(a=2)-2-2*乘法乘法6.56.5*6 639.039.0/除法除法13/213/26.56.5 整除整除132
3、1326 6ModMod取模取模15Mod415Mod43 3+加法加法45+645+65151-减法减法23-1123-111212在使用算术运算符时要注意以下几点:在使用算术运算符时要注意以下几点:1.表中的表中的“-”运算符有两种含义:减法或者取负。运算符有两种含义:减法或者取负。当其表示减法时是一个双目运算符,表示取负时是单当其表示减法时是一个双目运算符,表示取负时是单目运算符。取负操作是这目运算符。取负操作是这7种运算符中唯一的一个单种运算符中唯一的一个单目运算符目运算符(只要求一个操作数只要求一个操作数)。2.除法除法(/)和整除和整除()的区别。例如的区别。例如 13/2=6.5
4、,132=6;整除;整除用于整数除法,如果参加运算的数不用于整数除法,如果参加运算的数不是整数,则先将这些数四舍五入成整数再参加运算。是整数,则先将这些数四舍五入成整数再参加运算。3.模运算符模运算符Mod为求整型除法的余数,如果参加运为求整型除法的余数,如果参加运算的数不是整数,同样需要先四舍五入后再进行计算。算的数不是整数,同样需要先四舍五入后再进行计算。例如例如13 Mod 2 值为值为1,25.6 Mod 4.5 的值为的值为1。4.1 运算符与表达式运算符与表达式关系运算符如表所示,他们的优先级是相同的关系运算符如表所示,他们的优先级是相同的运算符运算符含义含义示例示例结果结果 大于
5、大于5(53)5(53)TrueTrue=大于等于大于等于”a a”=”b b”FalseFalse 小于小于”abcabc”b bcdcd”TrueTrue=小于等于小于等于5=65=6TrueTrue=等于等于“5656”=”6565”FalseFalse不等于不等于“ABCDABCD”ABCABC”TrueTrue1.进行关系运算时,应先算出关系运算符两侧表达进行关系运算时,应先算出关系运算符两侧表达式的值,然后再进行比较。式的值,然后再进行比较。2.当关系运算符两侧的表达式均为数值型时,按数当关系运算符两侧的表达式均为数值型时,按数值大小进行比较。值大小进行比较。3.当进行比较的表达式
6、是字符串类型时,对应的字当进行比较的表达式是字符串类型时,对应的字符按照其符按照其ASCII值进行比较。例值进行比较。例如:如:”abc”acd”,先比较第,先比较第1个字符,二者都个字符,二者都是是a,ASCII值相等,接着比较第值相等,接着比较第2个字符,因为个字符,因为ASCII值值”b”12”,结果为,结果为True。关系运算过程中有几点需要注意:关系运算过程中有几点需要注意:5.对于日期型数据的比较,可将日期看成是对于日期型数据的比较,可将日期看成是“yyyymmdd”的的8位整数,然后再比较。例如位整数,然后再比较。例如#2006-11-9#2007-1-1#,该表达式值为,该表达
7、式值为True。6.单精度数不能直接进行单精度数不能直接进行“=”的比较。例如的比较。例如1.0*7.0/7=1.0,这个式子在数学上为恒等式,但在计,这个式子在数学上为恒等式,但在计算机中由于浮点数的误差可能会认为他们并不相等,算机中由于浮点数的误差可能会认为他们并不相等,通常的做法是让两个式子相减后取绝对值,观察这个通常的做法是让两个式子相减后取绝对值,观察这个绝对值是否小于某个很小的数,例如绝对值是否小于某个很小的数,例如10-5,如果小于,如果小于设定的这个数就认为他们是相等的。设定的这个数就认为他们是相等的。4.1 运算符与表达式运算符与表达式布尔运算符如表所示布尔运算符如表所示运算
8、符运算符含义含义示例示例结果结果说明说明Not取反取反Not TF对其后的布尔值取反对其后的布尔值取反And与与T And FF当两个值均为真时结果为真当两个值均为真时结果为真Or或或T Or FT当两个值均为假时结果为假当两个值均为假时结果为假Xor异或异或T Xor FT两个值相反时,结果才为真两个值相反时,结果才为真Eqv等价等价T Eqv FF两个值相同时,结果才为真两个值相同时,结果才为真ImpImp蕴含蕴含T Imp FT Imp FF F第一个值为真,第二个值为第一个值为真,第二个值为假时结果为假,否则结果为假时结果为假,否则结果为真真在这些布尔运算符中,只有在这些布尔运算符中,
9、只有Not是单目运算符,意为是单目运算符,意为真变为假,假变为真;其他均为双目运算符。常用的真变为假,假变为真;其他均为双目运算符。常用的是前是前3种,其格式为:种,其格式为:表达式表达式1 And/Or/Eqv/Imp 表达式表达式2And、Or均可用于将多个关系表达式进行逻辑判断。均可用于将多个关系表达式进行逻辑判断。例如:例如:数学不等式数学不等式abc,在,在VB中不能写成是中不能写成是a=b=c,应该表示为:,应该表示为:a=b And b2 And 13=6 Or 13/2 6 结果为结果为True4.1 运算符与表达式运算符与表达式VBVB只有一种字符串连接符,即连接运算符只有一
10、种字符串连接符,即连接运算符“&”。用该运算符可以连接字符串常量、字符串变量等构用该运算符可以连接字符串常量、字符串变量等构成一个字符串表达式。字符串表达式的格式为:成一个字符串表达式。字符串表达式的格式为:&3&n例如:例如:“xyzxyz”&123&456&123&456 运算结果为运算结果为 xyz123456xyz123456123&“100”运算结果为运算结果为123100 4.1 运算符与表达式运算符与表达式优先级优先级运算符类型运算符类型运算符运算符1 1算术运算符算术运算符(指数运算指数运算)2 2-(-(取负取负)3 3*、/(/(乘法和除法乘法和除法)4 4(整除整除)5
11、5Mod(Mod(求模求模)6 6+、-(-(加法和减法加法和减法)7 7字符串运算符字符串运算符&(&(字符串连接字符串连接)8 8关系运算符关系运算符=、=、=9 9布尔运算符布尔运算符Not(Not(取反取反)1010And(And(与与)1111OrOr、Xor(Xor(或和异或或和异或)1212Eqv(Eqv(等价等价)1313Imp(Imp(蕴含蕴含)说明:说明:1.相同优先级的运算符同时出现时,按照从左向右的顺序相同优先级的运算符同时出现时,按照从左向右的顺序进行运算。进行运算。2.用括号可以改变运算符的优先顺序,应先算出括号里的用括号可以改变运算符的优先顺序,应先算出括号里的值
12、,然后再和括号外的表达式进行运算;括号里的表达式仍值,然后再和括号外的表达式进行运算;括号里的表达式仍然按照运算符各自的优先级顺序运算。然按照运算符各自的优先级顺序运算。例例【4-1】:求表达式:求表达式Not 86 Or 65 And 5+310 的值的值分析:在运算前先看清楚有哪些运算,然后再按照优先级分析:在运算前先看清楚有哪些运算,然后再按照优先级顺序逐步算出。本题按以下步骤进行运算:顺序逐步算出。本题按以下步骤进行运算:1.算术运算:算术运算:Not 86 Or 65 And 8102.关系运算:关系运算:Not True Or True And False3.取反操作:取反操作:F
13、alse Or True And False4.与操作:与操作:False Or False5.最后得到:最后得到:False例例【4-2】:判断一个年份是否是闰年,需要满足判断一个年份是否是闰年,需要满足以下条件:该年份能被以下条件:该年份能被4整除但不能被整除但不能被100整除,或整除,或该年份能被该年份能被100整除又能被整除又能被400整除。写出判断一个整除。写出判断一个年份是否是闰年的年份是否是闰年的VB表达式。表达式。分析:分析:设年份为设年份为y,则,则y需要满足上述两个条件之一需要满足上述两个条件之一即可,两个条件之间为即可,两个条件之间为“或或“的关系。整除可理解为的关系。整
14、除可理解为余数为余数为0,那么可将两个条件表示成如下形式:,那么可将两个条件表示成如下形式:条件条件1:y mod 4=0 And y mod 1000条件条件2:y mod 100=0 And y Mod 400=0得到的判断闰年的布尔表达式为:得到的判断闰年的布尔表达式为:y mod 4=0 And y mod 1000 Or y mod 100=0 And y Mod 400=04.2顺序结构顺序结构 顺序结构是程序中最基本的一种结构,顾名思义是按照顺顺序结构是程序中最基本的一种结构,顾名思义是按照顺序向下执行,一条语句执行完毕之后接着执行下一条语句序向下执行,一条语句执行完毕之后接着执
15、行下一条语句的结构。其流程图如下图的结构。其流程图如下图3-1所示。所示。Private Sub Command1_Click()Dim a As Integer,b As Integer a=12 Print a=;a b=2*a Print b=;bEnd Sub程序的执行后在窗体上输出内容如下:a=12 b=24一个顺序结构的例子:一个顺序结构的例子:4.3 IF语句语句单行选择语句的格式为:单行选择语句的格式为:If If Then Then 语句序列语句序列1 Else 1 Else 语句序列语句序列22Else语句用语句用括起来表示这部分是可以没有的,如果没有括起来表示这部分是可以
16、没有的,如果没有Else子句,语句序列子句,语句序列1就是必要参数。语句序列就是必要参数。语句序列1和语句序列和语句序列2可以是一条语句,也可以是多条语句。可以是一条语句,也可以是多条语句。4.3 IF语句语句例例【4-3】根据以下分段函数,任意输入一个根据以下分段函数,任意输入一个x值,求出值,求出y值。值。2,652,923xxxxxy4.3 IF语句语句分析:该分段函数表示,当分析:该分段函数表示,当x x2 2时,用公式时,用公式y yx x3 39 9来求来求y y的值;当的值;当x2x2时,用公式时,用公式y yx x2 25x-65x-6来计算来计算y y的值。在选择条件时,既可
17、以选择的值。在选择条件时,既可以选择x x2 2作为条件,也可以选择作为条件,也可以选择x2x=2 Then y=x 3-9 Else y=x 2+5*x-6Text2.Text=yEnd Sub4.3 IF语句语句例例【4-44-4】输入三角形的三条边,判断能否构成三角形。输入三角形的三条边,判断能否构成三角形。分析:三条边分析:三条边a、b、c构成三角形的条件是:构成三角形的条件是:a+bc,a+cb,b+ca三个条件同时成立,而且三个条件同时成立,而且a、b、c均为正数均为正数,因此选择条件是,因此选择条件是a+bc And a+cb And b+ca,当该条件为真时,三条边能够构成三角
18、形,当该条件为真时,三条边能够构成三角形,条件为假时不能构成三角形。流程图如图条件为假时不能构成三角形。流程图如图3-4所示。所示。4.3 IF语句语句建立应用程序用户界面与设置对象属性。这里建立的界面如图建立应用程序用户界面与设置对象属性。这里建立的界面如图3-53-5所所示。示。a a、b b、c c的值分别通过文本框的值分别通过文本框text1text1、text2text2和和text3text3进行输入,进行输入,然后在然后在text4text4中显示出能否构成三角形。对命令按钮中显示出能否构成三角形。对命令按钮“开始判断开始判断”编编写写ClickClick事件代码如下:事件代码如
19、下:Private Sub Command1_Click()Private Sub Command1_Click()Dim a As Single,b As Single,c As SingleDim a As Single,b As Single,c As Singlea=Val(Text1.Text)a=Val(Text1.Text)b=Val(Text2.Text)b=Val(Text2.Text)c=Val(Text3.Text)c=Val(Text3.Text)if a=0 or b=0 or c=0 then Exit Sub if a=0 or b=0 or c c And b+
20、c a And c+a bt=a+b c And b+c a And c+a bp1=p1=此三条边不能构成三角形此三条边不能构成三角形 p2=p2=此三条边能构成三角形此三条边能构成三角形 If t Then Text4.Text=p2 Else Text4.Text=p1If t Then Text4.Text=p2 Else Text4.Text=p1End SubEnd Sub4.3 IF语句语句IIFIIF语句也是单条件选择结构语句,其语法格式为:语句也是单条件选择结构语句,其语法格式为:IIF(IIF(条件,语句序列条件,语句序列1 1,语句序列,语句序列2)2)其中语句序列其中语
21、句序列1 1是当条件为真时要执行的语句块部分,语句序列是当条件为真时要执行的语句块部分,语句序列2 2是当条件为假时要执行的语句块部分。是当条件为假时要执行的语句块部分。例例【4-34-3】中的分段函数求值中的单条件选择结构语句如下:中的分段函数求值中的单条件选择结构语句如下:If x=2 Then y=x 3-9 Else y=x 2+5 If x=2 Then y=x 3-9 Else y=x 2+5*x-6 x-6利用利用IIFIIF语句可将改其写成如下形式:语句可将改其写成如下形式:y=IIF(x=2,x 3 y=IIF(x=2,x 3 9 9,x 2+5 x 2+5*x x 6)6)
22、块结构条件语句块结构条件语句IfThenElseEnd If虽然单行结构条件语句可以满足很多场合下的要求,但是当虽然单行结构条件语句可以满足很多场合下的要求,但是当ifif语句中语句中的语句序列要包含多条语句时,单行条件就难以容纳所有的语句了。的语句序列要包含多条语句时,单行条件就难以容纳所有的语句了。为此,为此,VBVB提供了一种块结构的条件语句,其语法格式如下:提供了一种块结构的条件语句,其语法格式如下:If If Then Then1ElseElse2End IfEnd If当程序运行到此处时,首先判断条件是否为真,如果为真,执行语句当程序运行到此处时,首先判断条件是否为真,如果为真,执
23、行语句序列序列1 1,否则执行语句序列,否则执行语句序列2 2。ElseElse子句可以有,也可以省略,如果省子句可以有,也可以省略,如果省略,那么当条件为假时,直接跳出选择执行下面的语句。略,那么当条件为假时,直接跳出选择执行下面的语句。在块结构中在块结构中IfIf语句必须以语句必须以End IfEnd If结束。结束。4.3 IF语句语句块结构条件语句块结构条件语句IfThenElseEnd If例例【4-54-5】将例将例【4-34-3】中的单行选择结构改写成块结构,如下所示:中的单行选择结构改写成块结构,如下所示:Command1Command1的的ClickClick事件代码为:事件
24、代码为:Private Sub Command1_Click()Private Sub Command1_Click()Dim x As SingleDim x As Singlex=Val(Text1.Text)x=Val(Text1.Text)If x=2 Then If x=2 Then y=x 3-9 y=x 3-9 Else Else y=x 2+5 y=x 2+5*x x 6 6End IfEnd IfText2.Text=yText2.Text=yEnd SubEnd Sub4.3 IF语句语句If语句的嵌套语句的嵌套IfIf语句的嵌套是指语句序列语句的嵌套是指语句序列1 1或语
25、句序列或语句序列2 2本身又是一个本身又是一个IfIf语句,例如,下面语句,例如,下面就是一个简单的块结构嵌套语句:就是一个简单的块结构嵌套语句:If If Then1 Then If If Then2 Then 1 Else Else 2 End If End IfElseElse 3End IfEnd If4.3 IF语句语句4.3 IF语句语句执行该嵌套语句时,先判断条件执行该嵌套语句时,先判断条件1,如果条件,如果条件1成立,再判断条件成立,再判断条件2,如果,如果条件条件2为真则执行语句序列为真则执行语句序列1,条件,条件2为假执行语句序列为假执行语句序列2,然后退出条件语,然后退出
展开阅读全文