第4章(选择结构)2

上传人:沈*** 文档编号:247351221 上传时间:2024-10-18 格式:PPT 页数:57 大小:503.50KB
返回 下载 相关 举报
第4章(选择结构)2_第1页
第1页 / 共57页
第4章(选择结构)2_第2页
第2页 / 共57页
第4章(选择结构)2_第3页
第3页 / 共57页
点击查看更多>>
资源描述
单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,单击此处编辑母版标题样式,顺序结构程序的执行是按照程序的书写顺序执行的。如果遇到需要根据给定的,条件进行分析、比较和判断,,并采取不同操作的问题,就不能由顺序结构实现,这时需要使用,VB,语言提供的选择结构。,生活中比较的例子:,1,、登录界面,2,、成绩等级评定,2,等级,=,优,(,成绩,=90),良,(80=,成绩,90),中,(70=,成绩,80),及格,(60=,成绩,70),不及格,(,成绩,60),数学中比较的例子:,分段函数,f=,0.05*w,0.05*100+0.02*(w-100),w100,选择结构(,Selection Structure,),单分支,条件语句,4,双分支,条件语句,多分支,条件语句,If,语句,5,单分支,if,条件语句,1,、单分支结构,格式,1,:,If,条件,Then,语句组,格式,2,:,If,条件,Then,语句组,End If,功能:如果“条件”成立,(,值为,True),或为非,0,值,则执行“语句组”,否则,直接执行,IF,语句的下一条语句。,条件,语句组,N,Y,通常是关系表达式或逻辑表达式,其值为,True,或,False,;,若是数值表达式,,0,为,False,,非,0,为,True,。,可以是一条或多条语句。若为多条语句,写在一行,用冒号隔开。,严格按此格式,6,例:输入两个数,x,和,y,,比较它们的大小,,使得,x,大于,y.,分析:,界面:,两个文本框、两个标签、一个命令按钮,编码:,变量:,x%,y%,xy,xy,,,t%,满足要求(不考虑),交换,x,、,y,的值,If xy then,交换,x,、,y,的值,或:,if xy then,交换,x,、,y,的值,end if,dim,x%,y%,t%,x=val(text1.text):y=val(text2.text),If,xy,Then,t=x,x=y,y=t,End If,Text1.text=x:text2.text=y,7,或:,If,xy,Then,t=x:x=y:y=t,8,2,、双分支结构,格式,1,:,If,条件,Then,语句组,1 Else,语句组,2,格式,2,:,If,条件,Then,语句组,1,Else,语句组,2,End if,功能:如果“条件”成立,(,其值为,True),或为非,0,值,则执行“语句,1”,;否则,执行“语句,2”,。,条件,语句组,1,语句组,2,N,Y,双分支,if,条件语句,严格按此格式,例:输入,x,,计算,y,的值。,当,x5,,,y=2x,;,当,x5,时,,y=3x-5,。,分析:,两个标签,两个文本框,一个命令按钮。,变量:,x,!,,y,!,Dim x As Single,y As Single,x=Val(Text1.Text),If,x max Then max=b,If c max Then max=c,Text4.Text=max,演示,例,:,输入一年号,判断它是否闰年。,(,1,)如果此年号能被,400,整除,;,(,2,)如果此年号能被,4,整除,但不能被,100,整除。,满足以上两条件之一,则是闰年。,分析:,两个标签,一个文本框,一个命令按钮。,变量:,year%,year Mod 400=0 or year Mod 4=0 And year Mod 100 0,Dim year As Integer,year=Val(Text1.Text),If,year Mod 400=0 or year Mod 4=0 And year Mod 100 0,Then,Label2.caption=year&,是闰年,Else,Label2.caption=year&,不是闰年,EndIf,例:输入一个三位数,判断是否水仙花数。,153=13+53+33,判断水仙花数,Private Sub Command1_Click(),Dim S%,A%,B%,C%,S=VAL(,InputBox,(,请输入一个三位数,输入三位数,),A=S 100,B=(S Mod 100)10,C=S Mod 10,If S=A 3+B 3+C 3 Then,Cls,Print S,“,是水仙花数。,Else,Cls,Print S,“,不是水仙花数。,End If,End Sub,17,多分支,if,条件语句,3,、多分支结构,格式,:,If,条件,1 Then,语句块,1,ElseIf,条件,2 Then,语句块,2,Else,语句块,n,End If,功能,:,若“条件,1”,为,True,,执行“语句,1”,;否则若“条件,2”,为,True,,执行“语句,2”,;否则若,,即,依次,判断各条件的值,若上述条件均不成立,执行“语句,n”,。,条件,1,条件,2,语句,2,语句,1,语句,n,语句,n-1,假,假,假,真,真,真,真,条件,n-1,例:输入,x,,计算,y,的值。,当,x0,,,y=-x;,当,0 x5,,,y=2x,;,当,x5,时,,y=3x-5,。,分析:,两个标签,两个文本框,一个命令按钮。,x,:,single y,:,single,Dim x As Single,y As Single,x=Val(Text1.Text),If,x 0,Then,y=-x,ElseIf,x=90),良,(80=,成绩,90),中,(70=,成绩,80),及格,(60=,成绩,70),不及格,(,成绩,100 or x 0,Then,Label2.Caption=,输入不在有效范围,ElseIf,x 60,Then,Label2.Caption=,等级:不及格,ElseIf,x 70,Then,Label2.Caption=,等级:合格,ElseIf,x 80,Then,Label2.Caption=,等级:中等,ElseIf,x y then z=x else z=y,可等价与:,z=,IIf,(x y,x,y),用,iff,函数实现分段函数的计算,当,x=5,时,,y=x2-1,y=,iff,(,x=5,x2-1,2*x,),25,IIf,函数实现成绩转换,Private Sub Command,1,_Click(),CJ=Val(Text1.Text),Text2.Text=IIf(CJ=90,优,IIf(CJ=80,良,IIf(CJ=70,中,IIf(CJ=60,及格,不及格),End Sub,27,2,、,Choose,函数,格式:,Choose(,整形表达式,选项列表,),功能:根据整形表达式的值,决定返回选项列表中的某个值。当变量的值为,1,时,函数值为第,1,项的值;当变量的值为,2,时,函数值为第,2,项的值;当变量的值为,n,时,函数值为第,n,项的值。,举例:,n=2,st,=Choose(n,red,green,blue),可等价与:,st=”green,”,Choose,函数实现成绩转换,Private Sub Command,1,_Click(),CJ=Val(Text1.Text),S=CJ 10+1,Text2.Text=Choose(S,不及格,不及格,不及格,不及格,不及格,不及格,及格,中,良,优,优,),End Sub,例:输入一个,1-7,之间的整数,在文本框输出其对应的星期。,Dim a%,a=Val(,InputBox,(,请输入一个,1-7,之间的整数:,),Text1.Text=,星期,&Choose(a,一,二,三,四,五,六,日,),29,多重窗体,是指在一个工程中有多个普通窗体,而每个窗体都拥有自己的用户界面和事件代码,通过工程管理形成一个复杂的、功能强大的应用程序。,多重窗体程序设计,补充,(,1,),Load,语句,格式:,Load,窗体名称,功能:将一个窗体装入内存。,说明:此时仅能引用窗体中的控件及各种属性,,但运行时窗体并不显示到屏幕上。,(,2,),UnLoad,语句,格式:,UnLoad,窗体名称,功能:清除内存中的窗体。,(3)Show,方法,格式:窗体名称,.Show,模式,功能:将一个窗体装入内存,并在屏幕上显示。,(4)Hide,方法,格式:窗体名称,.Hide,功能:隐藏指定的窗体,但仍保存在内存中。,多重窗体的添加:,工程,/,添加窗体,设置启动窗体(打开的第一个窗体)的方法:,工程,/,工程属性,保存文件:,根据提示,依次为每个文件(多个窗体文件,.,frm,、工程文件,.,vbp,等)命名、保存。,打开文件:,对于多窗体工程文件必须双击工程文件才能打,开该工程。,系统登陆的简单程序(一),If Text1.Text=123456 Then Form1.Hide:Form2.Show,演示,系统登陆的简单程序(二),If Text1.Text=123456 Then,Form1.Hide,Form2.Show,Else,MsgBox,密码错误!请重新输入!,Text1.SetFocus,Text1.SelStart=0,Text1.SelLength=Len(Text1.Text),End If,演示,嵌套是一个控制结构内又包含另一个控,制结构,选择结构的嵌套就是在一个选择结,构中又包含另一个选择结构,可以有两层或,多层嵌套。,选择结构的嵌套,系统登陆的简单程序(三),If Text2.Text=,lisi,Then,If Text1.Text=123456 Then,Form1.Hide:Form2.Show,Else,MsgBox,密码错误!请重新输入!,Text1.SetFocus:Text1.SelStart=0,Text1.SelLength=Len(Text1.Text),End If,Else,MsgBox,该用户不存在!请重新输入!,Text2.SetFocus:Text2.SelStart=0,Text2.SelLength=Len(Text2.Text),End If,演示,Select Case,语句,格式:,Select Case,测试表达式,Case,表达式,1,语句组,1,Case,表达式,2,语句组,2,Case Else,语句组,n,End Select,功能:根据,“,测试表达式,”,的值,从多个语句组中,选择符合条件的一个语句组执行。,数值表达式或字符串表达式,通常为变量。,“表达式,”,与“测试表达式”类型必须相同。,说明,:,“表达式,”,为下列四种形式:,普通表达式 如:,A,一组枚举表达式,(,用逗号分隔,),如:,2,4,6,8,表达式,1 To,表达式,2,如:,60 To 100,Is,关系运算符表达式,如:,Is 5,1 To 9,测试表达式值大于,5,或,在,19,之间,Private Sub Command1_Click(),Dim s$,s=Text1.Text,Select Case s,Case a To z,Text2.Text=,它是小写字母,Case A To Z,Text2.Text=,它是大写字母,Case 0 To 9,Text2.Text=,它是数字字符,Case Else,Text2.Text=,它是其它字符,End Select,End Sub,判断大小写字母问题,用,Select Case,情况语句实现。,例:编写程序,实现数字和英文单词的对应。提示:在文本框,1,中输入,0,到,6,之间的整数,在文本框,2,中显示对应的星期英文单词。,Dim a As Integer,a=Val(Text1.Text),If a=0 Then,Text2.Text=,sunday,ElseIf,a=1 Then,Text2.Text=,monday,ElseIf,a=2 Then,Text2.Text=Tuesday,ElseIf,a=3 Then,Text2.Text=Wednesday,ElseIf,a=
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!