第3章选择结构

上传人:无*** 文档编号:158261756 上传时间:2022-10-03 格式:PPT 页数:37 大小:1.16MB
收藏 版权申诉 举报 下载
第3章选择结构_第1页
第1页 / 共37页
第3章选择结构_第2页
第2页 / 共37页
第3章选择结构_第3页
第3页 / 共37页
资源描述:

《第3章选择结构》由会员分享,可在线阅读,更多相关《第3章选择结构(37页珍藏版)》请在装配图网上搜索。

1、 VB.NET程序设计教程程序设计教程 VB.NET程序设计教程程序设计教程3.1 引例:字号变大系统登录3.2 If语句3.3 Select Case多分支结构3.4 条件函数3.5 选择控件与分组控件3.6 综合应用 本章目录本章目录 VB.NET程序设计教程程序设计教程顺序结构、选择结构、循环结构顺序结构、选择结构、循环结构结构化程序设计三种控制结构结构化程序设计三种控制结构(1)顺序结构)顺序结构 各语句按出现的先后次序执行各语句按出现的先后次序执行bABa用传统流程图用传统流程图表示为表示为 VB.NET程序设计教程程序设计教程(2 2)选择结构)选择结构传统流程图传统流程图:b b

2、a a条件?条件?AB不成立不成立成立成立根据条件决定执行的语句根据条件决定执行的语句 VB.NET程序设计教程程序设计教程(3 3)循环结构)循环结构I、当型循环结构当型循环结构 条件条件?成立成立循环体循环体b b不成立不成立a aa a循环体循环体b b不成立不成立成立成立条件?条件?II、直到型循环结构直到型循环结构 根据条件重复执行语句根据条件重复执行语句(称为循环体称为循环体)VB.NET程序设计教程程序设计教程3.1 3.1 引例:字体变大登陆系统引例:字体变大登陆系统【例例3-1】:创建标题为:创建标题为“系统登录系统登录”窗体,输入用户窗体,输入用户名和密码,单击名和密码,单

3、击“确定确定”按钮,出现相应的信息提示。按钮,出现相应的信息提示。1.如输入用户名错误,出现如输入用户名错误,出现“用户名错误,请重新输入!用户名错误,请重新输入!”提提示示2.如输入用户名正确,密码错误,出现如输入用户名正确,密码错误,出现“密码错误,请重新输密码错误,请重新输入!入!”提示,用户名和密码输错了提示,用户名和密码输错了3次,退出系统。次,退出系统。3.如用户名和密码都正确,出现如用户名和密码都正确,出现“输入正确,欢迎使用系统!输入正确,欢迎使用系统!”提示。同时原窗体中除提示。同时原窗体中除“退出退出”按钮外,其他控件全部隐藏,按钮外,其他控件全部隐藏,显示标签显示标签La

4、bel3,标签显示,标签显示“字号字号”+字号大小。字号大小。Label3控件控件字号大小会自动递增,一直到字号大小会自动递增,一直到100。窗体大小设置为自动变化,。窗体大小设置为自动变化,窗体标题设置为窗体标题设置为“字号逐渐变大字号逐渐变大”。VB.NET程序设计教程程序设计教程3.1 3.1 选择结构选择结构 u计算机要处理的问题往往是复杂多变的,计算机要处理的问题往往是复杂多变的,仅采用顺序结构是不够的。仅采用顺序结构是不够的。u必须利用选择结构等来解决实际应用中的必须利用选择结构等来解决实际应用中的各种问题。各种问题。uVB中主要通过中主要通过If If条件语句和条件语句和Sele

5、ctSelect情况语情况语句来实现。它们都是对条件进行判断,根据句来实现。它们都是对条件进行判断,根据判断结果,选择执行不同的分支。判断结果,选择执行不同的分支。VB.NET程序设计教程程序设计教程3.2.1 If3.2.1 If条件语句条件语句 1.IfThen语句语句(单分支结构单分支结构)If If Then Then 语句块语句块(可以是一句或多句语句)(可以是一句或多句语句)End IfEnd If表表 达达 式:式:算术、关系和逻辑表达式。算术、关系和逻辑表达式。表达式值:表达式值:按非零为按非零为True,零为零为False进行判断。进行判断。作作 用:用:当表达式值为当表达式

6、值为True,执行执行Then后面的后面的 语句块,否则不做任何操作。语句块,否则不做任何操作。表达式 语句块 T F VB.NET程序设计教程程序设计教程单分支结构单分支结构 例:例:已知两个数已知两个数x x和和y y,比较它们的大小,使得比较它们的大小,使得x x大于大于y y。If xy Then t=x x=y y=t End If 或或 If xy Then t=x:x=y:y=t t y x 注意:简单注意:简单If形式无形式无End If时,只能是一句语句时,只能是一句语句或语句间用冒号分隔,而且必须在一行上书写。或语句间用冒号分隔,而且必须在一行上书写。VB.NET程序设计教

7、程程序设计教程【例例3-2】“两个数比大小两个数比大小”项目:单击窗体,产生项目:单击窗体,产生两个两个0100之间的随机整数之间的随机整数a和和b,比较两者大小,比较两者大小,使得使得a大于大于b。运行结果如图。运行结果如图3-5所示。所示。Sub Form1_Click()Handles Me.Click Dim a,b,t As Integer a=Int(Rnd()*101)b=Int(Rnd()*101)Label1.Text=原始值:原始值:a=&a&,b=&b&vbCrLf If a b Then 如果如果a比比b小,则互换小,则互换 t=a a=b b=t End If Lab

8、el1.Text&=降序后:降序后:a=&a&,b=&b End Sub VB.NET程序设计教程程序设计教程单分支行式If语句If Then l 该语句形式为单分支行该语句形式为单分支行If语句,无语句,无End If。l Then后语句只能写在一行上,若要写多条语句,后语句只能写在一行上,若要写多条语句,这些语句必须用冒号分隔。只能是一条语句或这些语句必须用冒号分隔。只能是一条语句或语句间用冒号分隔,而且必须在一行上书写。语句间用冒号分隔,而且必须在一行上书写。l 作用:计算条件表达式的值,如果结果为作用:计算条件表达式的值,如果结果为True,则执行则执行Then后面的语句(或语句块),

9、否则跳后面的语句(或语句块),否则跳过本语句,执行后续语句过本语句,执行后续语句 VB.NET程序设计教程程序设计教程【例例3-3】“三个数比大小三个数比大小”项目:单击窗体,产生三个项目:单击窗体,产生三个0100之间之间的随机整数的随机整数a、b和和c,比较三个数大小,使得,比较三个数大小,使得a=b=c。Sub Form1_Click()Handles Me.Click Dim a,b,c,t As Integer a=Int(Rnd()*101)b=Int(Rnd()*101)c=Int(Rnd()*101)Label1.Text=原始值:原始值:a=&a&,b=&b&,c=&c&vb

10、CrLf If a b Then t=a:a=b:b=t If a c Then t=a:a=c:c=t If b c Then t=b:b=c:c=t Label1.Text&=降序后:降序后:a=&a&,b=&b&,c=&cEnd Sub VB.NET程序设计教程程序设计教程双分支结构双分支结构2.IfThenElse语句语句If If 表达式表达式 ThenThen语句块语句块1ElseElse语句块语句块2End IfEnd If或或 If If 表达式表达式 ThenThen 语句语句1 ElseElse 语句语句2 表达式 F 语句块 1 T 语句块 2 作用:当表达式的值为作用:

11、当表达式的值为True时,执行时,执行Then后面后面的语句块的语句块1,否则执行,否则执行Else后面的语句块后面的语句块2 VB.NET程序设计教程程序设计教程双分支结构例双分支结构例计算分段函数计算分段函数yxxxxxxxsincos231030 单分支单分支 y=cos(x)x3+3*x 结构实现结构实现 If x0 Then y=sin(x)+sqrt(x*x+1)If x0 Then 双分支双分支 y=sin(x)+sqrt(x*x+1)Else结构实现结构实现 y=cos(x)x3+3*x End If VB.NET程序设计教程程序设计教程【例例3-4】“判断奇偶判断奇偶1”项目

12、:文本框项目:文本框1中输入整数,中输入整数,单击单击“判断奇偶判断奇偶”按钮,判断是偶数还是奇数,将按钮,判断是偶数还是奇数,将结果都显示在文本框结果都显示在文本框2中,单击一次显示一行结果。中,单击一次显示一行结果。分析:用判断整数能否被分析:用判断整数能否被2整除来判断奇偶数。整除来判断奇偶数。程序如下:程序如下:Sub Button1_Click()Handles Button1.Click Dim x As Integer x=Val(TextBox1.Text)If x Mod 2=0 Then TextBox2.Text&=x&是偶数是偶数&vbCrLf Else TextBox

13、2.Text&=x&是奇数是奇数&vbCrLf End IfEnd Sub VB.NET程序设计教程程序设计教程If语句的嵌套 说明:说明:1.使用使用If语句的嵌套时,内层的语句的嵌套时,内层的If语句必须完全包含在外层语句必须完全包含在外层的的If语句中,内外层结构不能交叉。语句中,内外层结构不能交叉。2.为避免混淆,为避免混淆,VB.NET规定规定Else总是和离它最近且尚未配总是和离它最近且尚未配对的对的If进行配对。进行配对。3.除行除行If语句外,每个语句外,每个End If与它上面最接近的与它上面最接近的IF配对。配对。书写格式一般为锯齿形,以便于区分和配对。书写格式一般为锯齿形

14、,以便于区分和配对。VB.NET程序设计教程程序设计教程【例例3-5】“判断奇偶判断奇偶2”项目:文本框项目:文本框1中输入整数后回车,判断是中输入整数后回车,判断是偶数还是奇数,将结果都显示在文本框偶数还是奇数,将结果都显示在文本框2中。输入如果不是整数,请中。输入如果不是整数,请出现提示信息。出现提示信息。VB.NET程序设计教程程序设计教程多分支结构多分支结构 3.IfThenElseIf 语句语句 If If 表达式表达式1 Then Then 语句块语句块1 ElseIfElseIf 表达式表达式2 Then Then 语句块语句块2 Else 语句块语句块 n+1 End IfEn

15、d If 表 达 式 2 表 达 式n T F T F 语 句 块 n+1 语 句 块 2 语 句 块 1 F T 表 达 式 1 语 句 块 n 作用:根据不同的表达式值确定执行哪个语句块作用:根据不同的表达式值确定执行哪个语句块 说明:说明:u 不管有几个分支,依次判断,当某条件满不管有几个分支,依次判断,当某条件满足,执行相应的语句,其余分支不再执行;足,执行相应的语句,其余分支不再执行;若条件都不满足,且有若条件都不满足,且有Else子句,则执行该子句,则执行该语句块,否则什么也不执行。语句块,否则什么也不执行。u ElseIf不能写成不能写成 Else If VB.NET程序设计教程

16、程序设计教程例例 已知变量已知变量chch中存放了一个字符,判断该字符是字母中存放了一个字符,判断该字符是字母字符、数字字符还是其他字符。字符、数字字符还是其他字符。If UCase(ch)=A And UCase(ch)=0 And ch x and is 0 And y 0 Then MsgBox(在第一象限在第一象限)ElseIf x 0 Then MsgBox(在第二象限在第二象限)ElseIf x 0 And y 0 And y 0 And y 0 MsgBox(“在第一象限在第一象限”)Case x 0 MsgBox(“在第二象限在第二象限”)Case x 0 And y 0 An

17、d y y,x,y)该语句与如下语句等价该语句与如下语句等价:If x y Then Tmax=x Else Tmax=y VB.NET程序设计教程程序设计教程条件函数条件函数 (2)Choose函数函数 ChooseChoose(整数表达式,选项列表整数表达式,选项列表)根据表达式的值根据表达式的值i,i,返回选项列表中第返回选项列表中第i个选项。如个选项。如果整数表达式的值越出选项范围时,返回果整数表达式的值越出选项范围时,返回Null。例例 根据根据NopNop的值,得到的值,得到+、-、中的某运算符中的某运算符:Op=Choose(Nop,+,-,)例例 根据当前日期根据当前日期,显示

18、今日是星期几显示今日是星期几。t=Choose(Weekday(Now),“t=Choose(Weekday(Now),“星期日星期日”,“,“星期一星期一”,“星期二星期二”,“,“星期三星期三”,“,“星期四星期四”,“,“星期五星期五”,“星期六星期六”)MsgBox(今天是:今天是:&Now&t)Dim nop As Integer,op As CharRandomize()nop=Int(Rnd()*4+1)op=Choose(nop,+,-,)MsgBox(nop=&nop&op=&op)VB.NET程序设计教程程序设计教程【例例3-8】“某日期星期几某日期星期几”项目:在文本框中

19、输入项目:在文本框中输入日期,单击日期,单击“星期几星期几”按钮,显示该日期是星期几。按钮,显示该日期是星期几。Sub Button1_Click()Handles Button1.Click Dim t As String Dim d As Date d=CDate(TextBox1.Text)t=Choose(Weekday(d),星期日星期日,星期一星期一,星星期二期二,星期三星期三,星期四星期四,星期五星期五,星期六星期六)Label2.Text=d&是是&t End Sub VB.NET程序设计教程程序设计教程选择控件与分组控件选择控件与分组控件 1.1.单选按钮单选按钮(Radio

20、ButtonRadioButton)例单选题测试例单选题测试(1 1)主要属性)主要属性 TextText属性属性 按钮上显示的文本按钮上显示的文本 CheckedChecked属性属性 表示单选按钮的状态:表示单选按钮的状态:True True 被选定被选定 False False 未被选定未被选定 VB.NET程序设计教程程序设计教程单选按钮单选按钮 (2 2)主要事件)主要事件 ClickClick 单击后使单击后使CheckedChecked属性为属性为TrueTrue CheckedChangedCheckedChanged 当某个单选按钮的当某个单选按钮的状态被发生变化,该事件随之

21、被触发。状态被发生变化,该事件随之被触发。VB.NET程序设计教程程序设计教程例多选题测试例多选题测试(1 1)主要属性和事件)主要属性和事件 与单选有相同的属性和事件,增加了:与单选有相同的属性和事件,增加了:CheckStateCheckState 属性属性 表示复选框状态表示复选框状态Unchecked Unchecked 未选定未选定Checked Checked 被选定被选定Indeterminate Indeterminate 灰色,灰色,2.2.复选框复选框(CheckBoxCheckBox)VB.NET程序设计教程程序设计教程3.3.分组分组 (GroupBoxGroupBox

22、)建立:建立分组,然后将各控件放置其中。建立:建立分组,然后将各控件放置其中。属性属性TextText属性属性 框架上的标题文本框架上的标题文本框架可以响应框架可以响应ClickClick和和DoubleClickDoubleClick事事TextText属性属性 分分组的标题,无则封闭框线组的标题,无则封闭框线一般不需要编写事件过程。一般不需要编写事件过程。特性:移动、复制、删除特性:移动、复制、删除框架框架,或对该控件进行,或对该控件进行Enabled、Visible属性设置时,也同样作用于该组属性设置时,也同样作用于该组内的其他控件。内的其他控件。VB.NET程序设计教程程序设计教程例

23、通过单选按钮和分组控件设置文本框的Font属性。在每个单选按钮和复选框中在每个单选按钮和复选框中编写单独的过程。本程序共编写单独的过程。本程序共编写了编写了8个过程个过程 带来问题:带来问题:繁琐繁琐 VB.NET程序设计教程程序设计教程 在在VB.NET中设置字体,需要生成一个中设置字体,需要生成一个Font类类型的对象,创建新字体需指定的参数包括字体、型的对象,创建新字体需指定的参数包括字体、字号、字型。具体语法格式:字号、字型。具体语法格式:对象对象.Font=new Font(Fontname,Fontsize,Fontstyle)说明:其中说明:其中Fontstyle字型是枚举类型,

24、其值有:字型是枚举类型,其值有:FontStyle.Regular、FontStyle.Bold 、FontStyle.Italic、FontStyle.Underline、FontStyle.Strikeout。Fontname和和Fontsize两个参数可以合并成两个参数可以合并成Font Fontstyle参数可以省略。参数可以省略。VB.NET程序设计教程程序设计教程Sub RadioButton1_CheckedChanged()Handles Label1.Font=New Font(宋体宋体,Label1.Font.Size,Label1.Font.Style)End SubSu

25、b CheckBox1_CheckedChanged()Handles.If CheckBox1.Checked Then 选中粗体选中粗体 Label1.Font=New Font(Label1.Font,Label1.Font.Style Or FontStyle.Bold)Else 取消粗体取消粗体 Label1.Font=New Font(Label1.Font,Label1.Font.Style And Not FontStyle.Bold)End If单选按钮事件单选按钮事件复选按钮事件复选按钮事件在每个单选按钮和复选框中在每个单选按钮和复选框中编写单独的过程。本程序共编写单独的过

26、程。本程序共编写了编写了8个过程个过程 带来问题:带来问题:繁琐繁琐 VB.NET程序设计教程程序设计教程例例 对上例进行改变,用一个事件过程实现。对上例进行改变,用一个事件过程实现。实现思想:实现思想:对每个按钮要进行状态判断对每个按钮要进行状态判断何为何为共享事件处理过程?共享事件处理过程?即多个控件共享事件处理过程即多个控件共享事件处理过程,形式:,形式:对象对象_事件(参数)事件(参数)Handles 对象对象.事件,对象事件,对象2.事件,事件,VB.NET程序设计教程程序设计教程Sub RadioButton1_CheckedChanged()Handles RadioButton

27、2.CheckedChanged,RadioButton3.CheckedChanged,_ RadioButton4.CheckedChanged,CheckBox1.CheckedChanged,_ CheckBox2.CheckedChanged,CheckBox3.CheckedChanged,_ CheckBox4.CheckedChanged Dim style As FontStyle=FontStyle.Regular Dim Fontname$=宋体宋体 VB.NET程序设计教程程序设计教程If RadioButton1.Checked Then Fontname=宋体宋体I

28、f RadioButton2.Checked Then Fontname=黑体黑体If RadioButton3.Checked Then Fontname=华文彩云华文彩云If RadioButton4.Checked Then Fontname=华文琥珀华文琥珀If CheckBox1.Checked Then style=style Or FontStyle.BoldIf CheckBox2.Checked Then style=style Or FontStyle.ItalicIf CheckBox3.Checked Then style=style Or FontStyle.UnderlineIf CheckBox4.Checked Then style=style Or FontStyle.Strikeout Label1.Font=New Font(Fontname,Label1.Font.Size,style)End Sub接上一页接上一页 VB.NET程序设计教程程序设计教程

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

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

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


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