




已阅读5页,还剩38页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
VisualBasic 第4节算法基础及VB基本语句 4 2分支结构 4 3循环结构 4 1顺序结构 1 VisualBasic程序设计 1 赋值语句 给变量赋值 格式 变量名 表达式 设置或获取对象的属性 设置属性值 对象名 属性 表达式获取属性值 变量名 对象名 属性 如 A VB程序设计 Text1 Text AB Text2 Text 4 1顺序结构 顺序结构 各语句按照出现的先后次序依次执行 Print方法系统提供的交互函数或过程 如 DimvAsIntegerDimbookAsString 8DimsumAsSinglev 26v v 1book VB程序设计 sum v 123 4 56 7 2 VisualBasic程序设计 1 赋值语句 4 1顺序结构 顺序结构 各语句按照出现的先后次序依次执行 注意 1 右边表达式的值强制转换成左边变量的精度 2 左边的函数只能返回变量或对象 例 DimXAsSingleDimYAsSingleDimSumAsSingleX 26Sin X X Y5 Sqr X YX Y 126Sum 1Sum Sum 1 3 赋值号左侧只能出现变量 4 一条赋值语句不能同时给多个变量赋值 3 VisualBasic程序设计 4 1顺序结构 顺序结构 各语句按照出现的先后次序依次执行 与用户交互函数和过程 格式 InputBox 提示 标题 默认值 X Y 格式 MsgBox 提示内容 按钮设置 标题 1 赋值语句 给变量赋值 设置或获取对象的属性 InputBox函数 MsgBox函数 4 VisualBasic程序设计 InputBox函数 输入框 作用 打开一个对话框 等待用户输入内容 单击确定 返回输入值 字符型数据 格式 变量名 InputBox 提示 标题 默认值 X Y 例 设置一个输入框 提示用户输入查询学号 提示 若提示内容中需要换行显示 在换行处加chr 13 和chr 10 各项参数位置必须一一对应 显示的坐标位置 5 VisualBasic程序设计 按钮 可选 整型表达式 缺省值为0指定信息框中按钮数目 类型 图标类型 缺省按钮等 Msgbox函数 信息框 变量 MsgBox 提示内容 按钮 标题 MsgBox提示内容 按钮 标题 提示内容 必要 字符表达式 即显示在对话框中的信息 2 MsgBox函数的常用参数的说明 1024个字符 如果文字超过一行 可用Chr 13 Chr 10 换行 标题 可选 在对话框标题栏中显示的内容 省略此项 则将应用程序名放在标题栏中 1 语法 6 VisualBasic程序设计 值按钮设置对应按钮名称0vbOKOnly 确定1vbOKCancel 确定 取消2vbAbortRetryIgnore 终止 重试 忽略3vbYesNoCancel 是 否 取消4vbYesNo 是 否5vbRetryCancel 重试 取消 Msgbox参数的设置 1 按钮的类型和数目的设置设置参数 按钮设置值 图标设置值 缺省的活动按钮 设置参数值 1或vbOKCancel 7 VisualBasic程序设计 2 图标的样式设置参数 按钮设置值 图标设置值 缺省的活动按钮 16vbCritical 32vbQuestion 48vbExclamation 64vbInformation 设置参数值 1 64或vbOKCancel vbInformation Msgbox参数的设置 8 VisualBasic程序设计 3 说明哪一个是缺省按钮设置参数 按钮设置值 图标设置值 缺省的活动按钮 0VbDefaultButton1 256VbDefaultButton2 512VbDefaultButton3 设置参数值 2 64 512 578或vbOKCancel vbInformation VbDefaultButton3 Msgbox参数的设置 9 VisualBasic程序设计 符号常量返回值对应按钮 4 Msgbox的函数返回值用于确定用户选择对话框的哪一个按钮 以作出不同的响应 vbOK1 确认 vbCancel2 取消 vbNo7 否 N vbAbort3 终止 A vbRetry4 重试 R vbIgnore5 忽略 I vbYes6 是 Y Msgbox的返回值 10 PrivateSubCommand1 Click DimiAsIntegerIfText2 Text 123456 AndText1 Text npu ThenForm3 Visible TrueForm1 Visible FalseElse i MsgBox 密码错 Chr 13 Chr 10 是否重新输入 vbOKOnly vbCritical 提示信息 Text2 Text Form1 Visible TrueEndIfEndSubPrivateSubCommand2 Click EndEndSubPrivateSubForm Load Text1 Text npu Text2 Text Text2 PasswordChar EndSub 进入 11 VisualBasic程序设计 先对条件测试 根据测试的结果选择执行不同的分支 1 If条件语句 2 SelectCase结构 VisualBasic程序设计 4 2选择结构 3 条件函数 12 VisualBasic程序设计 1 If Then结构 格式 If条件Then A组语句 EndIf 执行规则 若条件成立 执行A组语句 条件不成立 跳过A组语句 4 2 1If条件语句 例输入一个数 如果是3的倍数则通过消息框输出 PrivateSubForm Click DimDataAsIntegerData InputBox 请输入一个值 IfDataMod3 0ThenMsgBoxDataEndSub Data是3的倍数 13 VisualBasic程序设计 例 Ifscore 60ThenPrint 祝贺你考试通过 ElsePrint 考试未通过 EndIfPrint 继续努力 2 If Then Else结构 格式 If条件ThenA组语句ElseB组语句ENDIf 执行规则 条件成立 执行A组语句 条件不成立 执行B组语句 4 2 1If条件语句 14 3 If Then ElseIf结构 Mark val Text1 Text IfMark 90ThenPrint 优 ElseIfMark 60ThenPrint 通过 ElsePrint 未通过 EndIf 格式 If条件1Then A组语句 ElseIf条件2Then B组语句 ElseIf条件3Then C组语句 Else n组语句 EndIf 4 2 1If条件语句 多分支语句中 有多个分支同时满足 只执行第一个与之匹配的语句块 15 If Then ElseIf结构 Char InputBox 输入一个字符 测试字符值 IfChar 0 AndChar A AndChar a AndChar z ThenMsgBox 输入的字符是小写字母 ElseMsgBox 输入的字符是其它符号 EndIf 判断输入的是大写字母 小写字母 数字还是其它符号 16 If Then ElseIf结构 PrivateSubCommand1 Click 单击 正确无误 按钮IfLen TxtCode Text 8ThenLblWarn Caption 考核证号必须输入 长度为8位 TxtCode SetFocusElseIfLen TxtName Text 0ThenLblWarn Caption 考生姓名必须输入 TxtName SetFocusElseIfLen TxtSeat Text 0ThenLblWarn Caption 座位号必须输入 TxtSeat SetFocusElseLblWarn Caption Debug PrintTxtCode TextDebug PrintTxtName TextDebug PrintTxtSeat TextEndIfEndSub 17 VisualBasic程序设计 4 If语句的嵌套 4 2 1If条件语句 If语句的嵌套是指if或else后面的语句块中又包含If语句 语句形式 IfThenIfThen EndIf EndIf 注意 1 对于嵌套结构 为了增强程序的可读性 应该采用缩进形式书写 2 If语句形式若不在一行上书写 必须与EndIf配对多个If嵌套 EndIf与它最接近的If配对 18 3 1选择结构 SelectCase选择语句 语法格式 SelectCase测试表达式Case测试项1A组语句Case测试项2B组语句 CaseElsen组语句EndSelect功能 根据测试表达式的值 决定程序的流向 返回目录 值的类型是数值型 字符串型 日期型等 一旦与某个Case后的值相等 则执行这个Case中的 完成后执行EndSelect后的语句 如果所有的Case后的都不与项匹配 则执行CaseElse后的 19 VisualBasic程序设计 说明 测试表达式的值应是数字或字符型测试项的取值必须与测试表达式的值类型相同 常用形式为 具体取值 用逗号隔开如 1 5 9连续的范围 界1TO界2如 12To20满足某个条件 Is运算符如 Is 10三种形式可以组合使用 4 2 2SelectCase语句 例 输入二级考试成绩 要求显示对应三级制的评定 Mark Val Text1 Text SelectcaseMarkcaseis 90Print 优 case60to90Print 通过 CaseElsePrint 未通过 Endselect Mark Val Text1 Text K mark 10Selectcasekcase10 9Print 优 case8to6Print 通过 CaseElsePrint 未通过 Endselect 返回包含于字符串内的数字 字符串中是一个适当数值类型 语法格式 SelectCase测试表达式Case测试项1A组语句Case测试项2B组语句 CaseElsen组语句EndSelect 20 例 学生成绩分等Data InputBox 请输入一个成绩 成绩分等 SelectCaseInt Data 10 Case10MsgBox 满分 成绩分等 Case9MsgBox 优秀 成绩分等 Case8MsgBox 良好 成绩分等 Case7MsgBox 一般 成绩分等 Case6MsgBox 合格 成绩分等 CaseElseMsgBox 不合格 成绩分等 EndSelect 21 补充例题 设计一个由计算机来当小学低年级学生算术老师的VB应用程序 要求给出一系列的两个1 10数的四则运算的算术题 学生输入该题的答案 计算机根据学生的答案判断正确与否 并给出成绩 单击结束命令按钮 退出应用程序 分析 产生1 10操作数 可通过Int 10 Rnd 1 实现85 22 OptionExplicitDimresult nok nerror 存放计算结果 正确个数 错误个数 23 Rem生成题目PrivateSubForm Load Dimnum1 num2 nop op 操作数 操作符代码 操作符Randomize 随机数发生器初始化num1 Int 10 Rnd 1 num2 Int 10 Rnd 1 nop Int 4 Rnd 1 SelectCasenopCase1op result num1 num2Case2op result num1 num2Case3op result num1 num2Case4op result num1 num2EndSelectLabel1 num1 op num2 EndSub 24 Rem按回车 判正误PrivateSubText1 KeyPress KeyAsciiAsInteger IfKeyAscii 13ThenIfVal Text1 resultThenPicture1 PrintLabel1 Text1 Tab 10 nok nok 1Text1 ElsePicture1 PrintLabel1 Text1 Tab 10 nerror nerror 1Text1 EndIfText1 SetFocusForm LoadEndIfEndSub 25 Rem单击 计分 显示结果PrivateSubCommand1 Click Label1 Picture1 Print Picture1 Print 一共计算 Int nok nerror 道题 Picture1 Print 得分 Int nok nok nerror 100 EndSub 26 VisualBasic程序设计 4 3循环结构 循环 是在指定的条件下多次重复执行一组语句 1 For Next 2 Do Loop 3 循环嵌套 4 其他辅助控制语句 27 VisualBasic程序设计 For循环变量 初值TO终值 Step步长 语句块ExitFor语句块Next循环变量 For循环格式 执行过程 1 将初值赋循环变量 2 判断循环变量值是否小于等于终止值 3 若是 执行循环体 语句块 4 然后将变量增加一个步长 5 重复2 4步骤 6 否则 结束循环 4 3 1For循环 步长省略 默认为1 28 VisualBasic程序设计 程序代码 DimI s ForI 1To10step1NextIPrintI s 例1 求1 2 3 4 10之和 分析 重复过程 循环体 s s I初值 终值和增量 1 10 1 初值与终值换位可以吗 循环体的执行次数是多少 s s I ForI 10To1Step 1 4 3 1For循环 For循环变量 初值TO终值 Step步长 语句块ExitFor语句块Next循环变量 I 10 29 VisualBasic程序设计 注意 初值 终值 步长必须是数值型 步长为正 初值终值 缺省默认为1 在已知循环次数时使用For循环 循环次数 int 终值 初值 步长 1 组成循环体的语句块可以是一条或多条语句 ExitFor表示当遇到该语句时 退出循环体 执行Next的下一句 在循环体内对循环变量可多次引用 但在循环过程中一般不改变其值 否则影响结果 退出循环后 循环变量保持退出时的值 4 3 1For循环 30 例2 求斐波那契级数的前20项PrivateSubForm Click DimA B I TAsIntegerA 1 B 1 生成级数第一 二项PrintA B ForI 3To20T A B 产生级数新的一项A B 让B成为下一组的AB T 原来A B的值成为下一组的BPrintB IfIMod6 0ThenPrintNextIEndSub 返回目录 斐波那契级数 第一 二项为1第三项开始 每一项的值是前两项值之和 每6个数一行 31 VisualBasic程序设计 1 DoWhile循环体 条件成立时 Loop 2 D0循环体LoopWhile 3 DoUntil循环体 条件不成立时 Loop 4 Do循环体LoopUntil 4 3 2Do Loop循环 32 VisualBasic程序设计 1 While循环 DoWhile循环体Loop 执行过程 先判断 后执行 先判断循环条件 若为真 执行循环体 再判断循环条件否则 跳过循环体 执行Loop之后语句 4 3 2Do Loop循环 33 VisualBasic程序设计 D0循环体LoopWhile 执行过程 先执行 后判断 先执行循环体 再判断循环条件 若为真 继续执行循环体 否则 结束循环 执行Loop之后语句 1 While循环 4 3 2Do Loop循环 34 VisualBasic程序设计 DoWhile循环体Loop D0循环体LoopWhile 区别 1 执行顺序不同形式一 先判断 后执行循环体 形式二 先执行循环体 后判断 2 执行次数不同 特殊情况下 形式一 条件不满足 循环体可能一次也不执行形式二 不论条件如何 至少执行一次 While循环 4 3 2Do Loop循环 35 VisualBasic程序设计 执行过程 先判断 后执行 先判断循环条件 条件为假 执行循环体 然后再判断条件 条件为真 跳过循环体 执行Loop之后语句 DoUntil循环体Loop 2 Until循环 4 3 2Do Loop循环 36 VisualBasic程序设计 几种形式比较 DoWhile循环体Loop While DoUntil循环体Loop Until 区别 While条件为真时执行循环体 否则退出循环Until条件为假时执行循环体 否则退出循环 关系 while和Until可以相互转换 但循环条件取反 4 3 2Do Loop循环 37 VisualBasic程序设计 DoWhile循环体Loop DimI sAsIntegerForI 1To10s s INextIPrintI s 例1 求1 2 3 4 10的和 DimI sAsIntegerI 1D
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024-2025学年河南省郑州市八十八中八年级(下)期中数学试卷(含答案)
- 养殖小区出租合同范本
- 房东日常收租合同范本
- 公共平台转让合同范本
- 夫妻买房的合同范本
- 空房公寓出租合同范本
- 自家车队维修合同范本
- 车位分期还款合同范本
- 定制制服服装合同范本
- 农业种植西红柿合同范本
- 2025年高考(陕西、山西、青海、宁夏卷)历史真题及答案
- 关于奶茶店转让合同范本
- 2025年保税区面试题目及答案
- 公安基础知识培训课件
- 2025年期货高管考试题库及答案
- 2024年黑龙江省肇源县卫生系统招聘考试(护理学专业知识)题含答案
- 2025年江苏省南京市中考英语试卷
- 2025年政法委网格员考试题库
- 2025年新版期权知识考试题库带答案
- 无锡市公安局梁溪分局招聘警务辅助人员57人笔试模拟试题参考答案详解
- 2025年度养老护理员考试技师培训考试题(含答案)
评论
0/150
提交评论