




已阅读5页,还剩43页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第3章VisualBasic程序结构,3.1VisualBasic基本语句3.2程序结构习题三,3.1VisualBasic基本语句,3.1.1赋值语句赋值语句是任何程序设计中最基本的语句。它的作用是使右边表达式的值赋给左边的变量,VisualBasic使用赋值号“=”来赋值,其格式如下:说明:(1)LET表示赋值,通常省略。,(2)表达式的类型应与变量名的类型一致,即同时为数值型或同时为字符型。当同为数值型但具有不同的精度时,强制转换成左边的精度。例如:iA%=3.5iA为整型变量,iA中的结果为3(3)给变量赋值和设定属性是VisualBasic编程中常见的两个程序语句。例如:sRate!=0.1sRate为单精度变量,将0.1赋值给变量sRateText1.text=为文本框设置空字符串属性Text1.text欢迎使用VisualBasic6.0为文本框显示字符串(4)虽然赋值号与关系运算符等于号都用“=”表示,但VisualBasic系统不会产生混淆。会根据所处的位置自动判断是何种意义的符号。,3.1.2用户交互函数和过程VisualBasic与用户之间的直接交互是通过InputBox函数、MsgBox函数和MsgBox子过程进行的。1InputBox函数InputBox函数的作用是打开一个对话框,等待用户键入文本或选择一个按钮。当用户单击“确定”按钮或按回车键,函数返回文本框中输入的值。函数形式如下:变量=InputBox$(提示,标题,缺省,x坐标位置,y坐标位置),说明:(1)有$选项,返回的数据类型是字符串型;省略此项,返回的数据类型跟声明的变量类型一致。(2)不能省略“提示”项,该项为一字符串表达式,在对话框中作为信息显示,可为汉字;若要在多行显示,必须在每行行末加回车chr(13)和换行chr(10)控制符。(3)“标题”为字符串表达式,在对话框的标题区显示;若省略,则把应用程序名放入标题栏中。,(4)“缺省”为字符串表达式,当在输入对话框中无输入时,则该缺省值作为输入的内容。(5)“x坐标位置”、“y坐标位置”为整型表达式,坐标确定对话框左上角在屏幕上的位置;屏幕左上角为坐标原点,单位为twip。(6)各项参数次序必须一一对应,除了“提示”一项不能省略外,其余各项均为可选项,但缺省部分也要用逗号占位符跳过。(7)函数返回值为字符串类型,若想将其转换为其它数据类型,还要进行相应的转换操作。,【例31】在文本框中输入用户的姓名,当按确定按钮后,strName变量中的值为用户所输入的字符串。(1)编写事件。PrivateSubCommand1_Click()DimstrNameAsString*40,strS1AsString*40strS1=请输入你的姓名+Chr(13)+Chr(10)+然后单击确定strName=InputBox$(strS1,输入框,100,100)EndSub(2)程序运行如图3.1所示。,图3.1例31程序运行结果显示,2MsgBox函数和MsgBox子过程MsgBox函数的作用是打开一个信息框,等待用户选择一个按钮。MsgBox函数返回所选按钮的整数值;若不需返回值,则可作为MsgBox子过程使用。MsgBox函数形式如下:变量%MsgBox(提示,按钮,标题)MsgBox子过程形式如下:MsgBox提示,按钮,标题,说明:(1)“提示”和“标题”的意义与InputBox函数中对应的参数相同。(2)“按钮”为整型表达式,决定信息框按钮的数目、类型及出现在信息框上的图标类型。MsgBox按钮的设置和含义如表3.1所示,MsgBox函数返回值的含义如表3.2所示。,表3.1MsgBox“按钮”的设置和含义,表3.2MsgBox函数返回值的含义,(3)表3.1中按钮的4个分组可以组合使用(可以用内部常数形式或按钮形式表示)。(4)以应用模式建立对话框时,必须响应对话框才能继续当前的应用程序;以系统模式建立对话框时,所有的应用程序都将被挂起,直到用户响应了对话框。(5)InputBox、MsgBox中的参数必须按语法要求规定的顺序提供数值,缺省部分也要用逗号占位符跳过。为了克服这个规定,在VisualBasic4.0以后的版本中,提供了命名参数的使用。形式如下:,MsgBoxprompt,buttons,titleMsgBox函数变量%MsgBox(prompt,buttons,title)MsgBox子过程InputBox$(prompt,title,defaultxPos,yPos)InputBox函数关键字prompt(提示)、buttons(按钮)、title(标题)、default(缺省)、xPos(x坐标)、yPos(y坐标)是命名参数。命名参数可用“:=”以任意顺序赋值,而且有较好的可读性。,【例32】MsgBox示例。I=MsgBox(密码错误,5+vbExclamation,输入密码)用命名参数表示为:I=MsgBox(buttons:=5+vbExclamation,title:=输入密码,prompt:=密码错误)以上两例效果相同。运行结果如图3.2所示。,图3.2MsgBox示例,3.2程序结构,3.2.1选择结构选择结构完成根据条件选择执行的分支的功能。VisualBasic中提供了多种形式的条件语句。1If.Then语句(单分支结构)该语句形式如下:IfThen语句块EndIfIfThen,说明:(1)表达式一般为关系表达式、逻辑表达式,也可为算术表达式。表达式值按非0为True,0为False进行判断。(2)语句块可以是一条或多条语句。若用中简单的形式表示,则只能是一条语句或是用冒号分隔的多条语句,但必须在一行上书写。(3)该语句的作用是当条件表达式的值为非0时(True),执行Then后面的语句块(或语句),否则不做任何操作。,2If.Then.Else语句(双分支结构)该语句形式如下:IfThenElseEndIfIfThenElse该语句的作用是当表达式的值为非零(True)时,执行Then后面的语句块1(或语句1),否则执行Else后面的语句块2(或语句2)。,3If.Then.ElseIf语句(多分支结构)这种语句为多分支选择结构,如图3.3所示。语句形式如下:IfThenElseIfThen.Else语句块n1EndIf,该语句的作用是根据不同的表达式确定执行哪个语句块,VisualBasic测试条件的顺序为:表达式1,表达式2,一旦遇到表达式值为非0(True),则执行该条件下的语句块。,图3.3多分支选择结构,【例33】在两个文本框中输入数据,用消息框显示最大值。要求:(1)进行界面设计以及属性设计(参考运行结果图3.4)。(2)编写事件。,图3.4例33程序运行结果显示,PrivateSubCommand1_Click()DimxAsSingle,yAsSinglex=Val(Text1.Text)y=Val(Text2.Text)Ifx10表示测试表达式的值为2、4、6、8或大于10(3)该语句是多分支结构的另一种表示形式,其作用是比较的结果和各Case子句中的值,决定执行哪一组语句块。如果有多个Case短语中的值与测试值匹配,则执行第一个与之匹配的语句块。,【例34】编写一个对输入字符进行转换的程序。转换规则为,将其中的大写字母转换成小写字母,小写字母转换成大写字母,空格不转换,其余转换成“*”。要求每输入一个字符,马上就进行判断和转换。(1)建立应用程序的用户界面。(2)设计对象属性。(3)编写事件代码。根据题中要求,当在“输入字符串”文本框中,每输入一个字符键马上就进行判断,这就要求对“输入字符串”文本框对象Text1对应的KeyPress事件进行编程。,程序编制如下:PrivateSubText1_KeyPress(KeyAsciiAsInteger)DimaaAsString*1aa=Chr$(KeyAscii)将ASCII码转换成字符SelectCaseaaCaseAToZ大写转换成小写aa=Chr$(KeyAscii+32)CaseaToz小写转换成大写aa=Chr$(KeyAscii-32)Caseaa=CaseElseaa=*,EndSelectText2.Text=Text2.Text&aa将文本框中已有的内容与转换字符连接EndSub命令按钮Command1的Click事件代码:PrivateSubCommand1_Click()Text1.Text=Text2.Text=EndSub命令按钮Command2的Click事件按钮:PrivateSubCommand2_Click()UnloadMeEndSub,(4)程序运行结果如图3.5所示。,图3.5例3-4程序运行结果,图3.6For循环语句结构,3.2.2循环结构循环是在指定的条件下多次重复执行一组语句。VisualBasic中提供了多种形式的循环结构,最主要的有For.Next循环语句和Do.Loop循环语句两种。它们的区别是For.Next循环语句知道具体的循环次数;而Do.Loop语句并不知道确切的次数,通常由一个条件来终止循环。,1For循环语句For循环语句用于控制循环次数预知的循环结构。循环语句结构如图3.6所示,语句形式如下:For循环变量=初值to终值Step步长语句块ExitFor语句块Next循环变量,说明(1)循环变量必须为数值型。(2)步长一般为正,初值小于终值;若为负,这时初值大于终值;缺省时步长为1。(3)语句块可以是一条或多条语句。(4)ExitFor表示当遇到该语句时,退出循环,执行Next的下一条语句。(5)For循环语句执行的过程如下:,循环变量被赋初值,它仅被赋值一次。判断循环变量是否在终值内,若是,则执行循环体;若否,则结束循环,执行Next的下一语句。循环变量加步长,转,继续循环。,2Do.Loop循环语句Do循环用于控制循环次数未知的循环结构。此种语句有两种语法形式,分别如下:形式1DoWhile|Until语句块ExitDo语句块Loop形式2Do语句块ExitDo语句块LoopWhile|Until,说明:(1)形式1是先判断后执行,有可能一次也不执行;形式2是先执行后判断,至少执行一次。两种形式(指While)的流程分别见图3.7和图3.8。(2)关键字While用于指明条件为True时就执行循环体中的语句,Until正好相反。(3)ExitDo表示当遇到该语句时,退出循环,执行Loop的下一语句。,图3.7DoWhile|Until循环结构,图3.8Do循环结构,对于循环的嵌套,要注意以下事项:(1)内循环变量与外循环变量不能同名。(2)外循环必须完全包含内循环,不能交叉。(3)不能从循环体外转向循环体内,也不能从外循环转向内循环,反之则可以。,【例35】分别用两种循环方式求1+2+3+100的值,运行结果如图3.9所示。,图3.9例3-5程序运行结果,两个按钮的Click单击事件代码分别为:Do.Loop循环结构PrivateSubCommand1_Click()DimsAsInteger,nAsIntegers=0n=1DoWhilen=100s=s+nn=n+1LoopText1.Text=sEndSub,For.Next循环结构PrivateSubCommand2_Click()DimsAsInteger,nAsIntegers=0Forn=1To100s=s+nNextnText1.Text=sEndSub,3.2.3其它辅助控制语句1GoTo语句GoTo语句的形式如下:GoTo标号|行号该语句的作用是使程序执行无条件地转移到标号
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 隆昌市知行中学2025-2026学年度第一学期初中八年级第一次月考数学试题(组卷)参考答案及评分意见
- 达尔文进化论课件
- 基于区块链技术的逆向物流溯源体系对回收率的提升机制探析
- 城市地下管廊出线盒抗震性能与防水密封的协同失效机制分析
- 可降解环保材料在切边齿形带中的应用潜力及降解性能评估体系
- 可持续生产模式探索:刀豆球蛋白生物发酵过程碳足迹与废弃物资源化
- 反应性稀释剂在微流控芯片中的可控聚合机制与工业转化瓶颈
- 反光轮廓标全生命周期碳足迹追踪与绿色供应链重构路径
- 双碳目标下的切换柜轻量化设计挑战与再生材料应用边界探索
- 区域产业集群发展模式对氟苯衍生物成本曲线的重构
- 2025年中国邮政集团有限公司安徽省分公司社会招聘笔试参考题库附答案解析
- 2023年TBNK淋巴细胞检测在健康管理中的应用专家共识完整版
- 牛只生产性能与收益评估方案
- 统编版八年级上册道德与法治 8.3.2《营造清朗空间》课件
- 2025拖车租赁协议
- 2025年秋人教鄂教版(2024)小学科学三年级上册《认识液体》教案
- 2025-2026学年高一上学期《抗战胜利八十周年纪念》主题班会课件
- 甜品制作基础知识点
- 2025文具店转让合同范本
- 11-特殊焊接与热切割作业安全技术
- 惠州一中钱学森班数学试卷
评论
0/150
提交评论