版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第3章VisualBasic.NET控制结构VB.Net程序设计教程
本章学习目标:□掌握VisualBasic.Net的顺序结构程序设计方法□掌握VisualBasic.Net的选择语句:
IF/Then、IF/Then/Else、Select/Case语句
及选择语句的嵌套□掌握VisualBasic.Net的循环语句:
For/Next语句、While语句、Do/Loop语句。3.1 顺序结构顺序结构的程序设计是最简单的,只要按照解决问题的顺序写出相应的语句就行,它的执行顺序是自上而下,依次执行。如图3-1,为顺序结构的流程图,执行顺序为先执行A,结束后再执行B。顺序结构一般是作为程序的一部分,与其它结构一起构成一个复杂的程序,例如选择结构中的复合语句、循环结构中的循环体等。图3-1顺序结构流程图
【例3-1】创建一个简单应用程序,该应用程序由两个文本框(TextBox)、两个标签(Label)、一个按钮(Button)组成。两个文本框中输入a、b的值,单击按钮,两个文本框中数值交换,程序运行效果如图3-2所示。左图为a与b的初始值,右图为交换a与b值后的运行效果。
具体操作步骤和源程序参见教材
【例3-2】创建一个简单应用程序,该应用程序由三个文本框(TextBox)、三个标签(Label)、一个按钮(Button)组成。其中两个文本框中输入长方形的长与宽的值,单击按钮,计算长方形的面积,并把面积数值输出到第三个文本框中。
具体操作步骤和源程序参见教材3.2 选择语句选择程序结构用于判断给定的条件,根据判断的结果来控制程序的流程。如图3-4,上图的逻辑为首先判断表达式的真假,如果表达式值为真则执行语句;如果表达式值为假,跳过语句,执行后续的语句。下图的逻辑为首先判断表达式的真假,如果表达式的为真则执行语句1;如果表达式值为假则执行语句2。这两种均为选择结构的流程图,根据表达式的真假决定程序的执行流程。VB.NET提供三种选择结构:IF/Then、IF/Then/Else和SelectCase。
图3-4选择结构流程图3.2.1IF/Then语句IF/Then语句的其语法格式为:
IF<逻辑表达式>Then
<语句块>
EndIF当逻辑表达式为真,执行语句块部分的语句;若逻辑表达式为假,跳过IF/Then语句,执行后续语句,其中IF、Then、EndIF均为关键字。【例3-3】创建一个简单应用程序,判断一个学生成绩是否及格。该应用程序由一个文本框(TextBox)、一个标签(Label)、一个按钮(Button)组成。其中文本框中输入学生的成绩,单击按钮,如果成绩大于60,则在提示“该学生成绩及格”。
具体操作步骤和源程序参见教材【例3-4】创建一个简单应用程序,输入任意三个数,按由大到小输出。该应用程序由三个文本框(TextBox)、三个标签(Label)、一个按钮(Button)组成。三个文本框输入三个数,单击按钮,把这三个数由大到小排序。具体操作步骤和源程序参见教材3.2.2IF/Then/Else语句IF/Then/Else语句的流程图如图3-4的右图,其语法格式为:
If<逻辑表达式>Then
<语句块1>
Else
<语句块2>
EndIf当逻辑表达式为真,执行语句块1,若逻辑表达式为假,执行语句块2。其中If、Then、Else、Endif均为关键字
【例3-5】创建一个简单应用程序,判断一个数是奇数还是偶数。该应用程序由一个文本框(TextBox)、一个标签(Label)、一个按钮(Button)组成。文本框输入待判断的数,单击按钮,如果这个数是偶数,则输出“此数为偶数”,如果这个数是奇数,则输出“此数为奇数”。
具体操作步骤和源程序参见教材
【例3-6】创建一个简单应用程序,从键盘输入两个数,输出两者的最大值。该应用程序由两个文本框(TextBox)、一个标签(Label)、一个按钮(Button)组成。文本框输入待判断的数,单击按钮,如果这个数是偶数,则输出“此数为偶数”,如果这个数是奇数,则输出“此数为奇数”。
具体操作步骤和源程序参见教材3.2.3多重选择语句如果要处理多重条件判断的情况,需要使用多重选择结构,多重条件结构是If/Then/Else的另一种形式,通过增加ElseIf子句使其成为多选择结构,其语法格式为:
If<逻辑表达式1>Then
<语句块1>
ElseIf<逻辑表达式2>Then
<语句块2>
......
ElseIf<逻辑表达式n>Then
<语句块n>
[Else
<语句块n+1>]
EndIf
【例3-7】创建一个简单应用程序,输入一个学生的成绩,若成绩大于等于90,输出“优秀”,若成绩大于等于80,小于90,输出“良好”,若成绩大于等于70,小于80,输出“中等”,若成绩大于等于60,小于70,输出“及格”,若成绩小于60,输出“不及格”。该应用程序由一个文本框(TextBox)、一个标签(Label)、一个按钮(Button)组成。文本框输入学生的成绩,单击按钮,输出结果。
具体操作步骤和源程序参见教材
【例3-8】创建一个简单应用程序,输入三个数,找出这三个数中的最大的数。该应用程序由三个文本框(TextBox)、五个标签(Label)、一个按钮(Button)组成。三个文本框输入三个数,单击按钮,找出最大的数并显示在一个Label中。
具体操作步骤和源程序参见教材3.2.4SelectCase语句SelectCase语句是多路判断语句,它是VB.NET提供的另一个构造多重选择结构的方法,流程图如图3-12,其语法格式为:
SelectCase<控制表达式>
Case<表达式列表1>
<语句块1>
Case<表达式列表2>
<语句块2> ......
Case<表达式列表n>
<语句块n>
[CaseElse<表达式列表1>
<语句块n+1>]
EndSelect注意:(1)CaseElse不是必须的,根据情况可以省略;(2)Select后面的表达式可以是算术表达式或字符;(3)控制表达式类型必须与匹配表达式列表类型一致,可以是一个具体值或是以下四种情况之一:一组逗号分隔的特定序列,例如:1,3,5或A,B,C 连续的数据区间,例如1TO4或xTOz 满足某个判断条件式,例如:Is<20、Is>"F" 可以是上述组合,但应用逗号分隔,例如:Case1,3,5,1TO4,Is<20
【例3-9】使用SelectCase语句重新实现例3-7。
具体操作步骤和源程序参见教材
【例3-10】创建一个简单应用程序,编写一个简单的计算器,实现两个整型数的四则运算。该应用程序由四个文本框(TextBox)、五个标签(Label)、一个按钮(Button)组成。其中三个文本框输入两个操作数及操作符,单击按钮,计算结果并显示在文本框中。
具体操作步骤和源程序参见教材3.2.5IIf函数IIf函数根据表达式的值,来返回两部分中的其中一个,其语法为:IIf(expr,truepart,falsepart)
expr:具有真值或假值的表达式。
truepart:如果expr为True,则返回这部分的值或表达式。
falsepart:如果expr为False,则返回这部分的值或表达式。
例:输出一学生成绩是否及格,语句为:
Debug.Write(IIf(G>=60,“合格”,“不合格”))注意:
在IIf语句中计算truepart和falsepart,虽然它只返回其中的一个。但如果falsepart产生一个被零除错误,那么程序就会发生错误,即使expr为True。3.3 循环语句3.3.1For/Next语句For/Next语句是VB的传统语句,也是最经典的构造循环结构的语句,通常在已知循环次数的情况下使用这种计数循环语句结构。语句格式为:
For<循环变量>=<初值>TO<终值>[Step<步长>]
<循环体>
Next[<循环变量>]
其中:循环变量、初值、终值、步长为数值型变量或相应的有效表达式。For、To、Next是必须的关键字,等号(=)也不能省略注意:当步长值为1,[Step<步长>]这部分可以省略。只有当循环变量超出初值与终值的限定区间时,终止循环。当初值、终值、步长值是变量时,如果在循环体内修改这些变量值,将不会影响循环次数,因为这些变量值在For语句中已经被引用。但如果修改循环变量值,将会影响循环次数。Next后面的循环变量可以省略【例3-11】创建一个简单应用程序,求1+3+……+99,并输出结果。
具体操作步骤和源程序参见教材【例3-12】创建一个简单应用程序,找出所有的水仙花数并输出。水仙花数是一个三位数正整数,其各位的立方和恰好等于该数本身,例如153=13+53+33。
具体操作步骤和源程序参见教材3.3.2While语句While循环结构的语法格式为:
While<逻辑表达式>
<循环体>
EndWhile首先执行While后的逻辑表达式,若结果为True,则执行循环体,然后再次执行逻辑表达式,重复执行上述过程……。当某一次执行逻辑表达式,值为False时,退出循环结构,转入循环结构后续程序执行。只要条件表达式成立就执行循环体语句,不一定非有循环变量控制循环次数,因此适合于循环次数不确定场合。【例3-13】创建一个简单应用程序,求1+2+……+100,并输出结果。
具体操作步骤和源程序参见教材【例3-14】创建一个简单应用程序,求n!=1*2*3*….*n,并输出结果。
具体操作步骤和源程序参见教材3.3.3Do/Loop语句图3-21当型循环流程图图3-22直到型循环流程图
对于事先不知道循环要执行多少次的情况来说,Do/Loop循环十分有用和方便。Do/Loop循环有两种语法格式,为前测型Do/Loop循环和后测型Do/Loop循环。
(1)前测型Do/Loop循环
语法格式为:
Do[while|until]循环条件
循环体
Loop
若选用while条件,称为当型循环,此时当循环条件为真时,执行循环体;然后再判断循环条件,当循环条件为假时,循环结束。其流程图如图3-21。
若选用until条件,成为直到型循环,此时当循环条件为假时,执行循环体,当循环条件为真时,结束循环。其流程图如图3-22。【例3-15】创建一个简单应用程序,用公式计算л的近似值,直到最后一项的绝对值小于1E-6为止。
具体操作步骤和源程序参见教材(2)后测型Do/Loop循环语法格式:Do循环体Loop[while|until]循环条件
后测型Do/Loop循环中的while、until与前测型中的while、until用法相同,while为当型循环,until为直到型循环。后测型循环与前测型循环的区别在于前测型循环的循环体可能一次也不执行,而后测型循环的循环体至少要执行一次。【例3-16】使用后测型循环重新实现例3-15。具体操作步骤和源程序参见教材3.3.4ForEach/Next语句ForEach...Next循环与For...Next循环类似,但它对数组或对象集合中的每一个元素重复一组语句,而不是重复语句一定的次数。如果不知道一个集合有多少元素,ForEach...Next循环非常有用。ForEach/Next循环的语法为:
ForEachelementingroup
statements
Nextelement说明:
对于集合或数组中的元素,element既可以是普通的Object类型,也可以是特殊的Object对象。group可以是数组,也可以是一个集合。3.3.5循环的强制退出
VB.NET提供了ExitDo、ExitWhile、ExitFor语句。ExitDo用于退出Do/Loop构造的循环结构。ExitWhile用于退出While构造的循环结构。ExitFor用于退出For/Next构造的循环结构。以下示例说明它们的用法。
【例3-17】创建一个简单应用程序,随机产生1-100之间的整数,如果此数能被7整除,程序结束,显示这个能被7整除的数。如果随机产生的数已达到10个还没有找到能被7整除的数,程序结束,显示“没找到能被7整除的数”。
具体操作步骤和源程序参见教材
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 家政服务人员合作合同协议2026
- 2026河南平顶山第五人民医院招聘2人备考题库含答案详解(轻巧夺冠)
- 曲麻莱县退役军人事务局2026年公益性岗位公开招聘备考题库及参考答案详解一套
- 2026年福建泉州石狮市行政服务中心管理委员会公开招聘工作人员备考题库附答案详解(达标题)
- 2026年度哈尔滨(春季) 通河县乡镇卫生院招聘医学毕业生5人备考题库完整答案详解
- 2026新疆第一师十三团医院人才招聘4人备考题库及完整答案详解
- 2026年牡丹江穆棱市特聘农技员招募8人备考题库及参考答案详解1套
- 2026湖北省长江新材有限公司社会招聘9人备考题库及答案详解(有一套)
- 2026年黄山市歙县消防救援大队公开招聘6名政府专职消防员备考题库及答案详解(夺冠系列)
- 2026江苏宿迁泗阳县招聘公办学校教师及紧缺急需教练员62人备考题库附答案详解(基础题)
- 浙江省金华市(2026年)辅警协警笔试笔试真题(附答案)
- 养老护理员工作倦怠与应对
- 安徽华师联盟2026届高三4月质量检测语文试卷(含答案详解)
- 2026广东佛山市南海区大沥镇镇属企业员工招聘9人建设笔试参考题库及答案解析
- 2026山西晋中市寿阳县国有资本运营有限公司及下属公司中高层管理人员招聘12人考试备考题库及答案解析
- 2025年农产品食品检验员职业技能竞赛理论考试题库(含答案)
- 全生命周期质量与绩效管理
- PLC基础知识教学课件
- “十五五规划纲要”解读:一体化战略能力升级
- 2026年教师资格证(初中 科学学科知识与教学能力)考试题及答案
- 建筑工程进场材料、构配件和设备质量控制工作标准
评论
0/150
提交评论