可视化程序设计VB理论二.ppt

上传人:小飞机 文档编号:5944563 上传时间:2023-09-06 格式:PPT 页数:29 大小:253.63KB
返回 下载 相关 举报
可视化程序设计VB理论二.ppt_第1页
第1页 / 共29页
可视化程序设计VB理论二.ppt_第2页
第2页 / 共29页
可视化程序设计VB理论二.ppt_第3页
第3页 / 共29页
可视化程序设计VB理论二.ppt_第4页
第4页 / 共29页
可视化程序设计VB理论二.ppt_第5页
第5页 / 共29页
点击查看更多>>
资源描述

《可视化程序设计VB理论二.ppt》由会员分享,可在线阅读,更多相关《可视化程序设计VB理论二.ppt(29页珍藏版)》请在三一办公上搜索。

1、控制语句与程序调试,学习目标:掌握If 条件语句和Select Case选择语句 掌握ForNext和DoLoop循环语句 掌握两重循环,了解多重循环 了解Exit、End语句 掌握程序的简单调试方法,控制语句与程序调试,教学内容:1 选择结构与相关语句 2 循环语句 3 其它语句 4 程序调试,选择结构If条件语句,1.If Then 其中,是一个条件表达式或逻辑表达式 例如,If Data=90 Then Print“优秀”例输入一个数,如果是3的倍数则通过消息框输出。Private Sub Form_Click()Dim Data As Integer Data=InputBox(请输入

2、一个值:)If Data Mod 3=0 Then MsgBox Data End Sub,Data是3的倍数,选择结构If条件语句,2.If Then Else 例如,Dim Data As Integer Data=InputBox(“请输入成绩:)If Data=90 Then Print“优秀”Else Print“合格”Print 计算完毕 上例的If 语句可以改写为:If Data 90 Then Print 合格 Else Print 优秀,选择结构If条件语句,3.块状If语句,A=InputBox(“A值”):B=InputBox(B值)Print A,B If A B Th

3、en T=A:A=B:B=T End If Print A,B,选择结构If条件语句,4.If语句嵌套 If语句嵌套使用可形成多分支的条件语句结构 If Then ElseIf Then Else End If,说明:ElseIf之间不要加空格。Else和位于其上方的最近的If配对,选择结构If条件语句,例Weight=InputBox(输入西瓜重量:,计算西瓜款)If Weight 4 Then Price=1ElseIf Weight=7 Then Price=1.3 Else Price=1.1End IfMoney=Price*WeightMsgBox“西瓜重”&Weight&“公斤,

4、单价”&_ Price&元,应收瓜款&Money&_ 元,计算西瓜款,4公斤以下:1.00元/公斤4至7公斤:1.3元/公斤超过7公斤:1.1元/公斤 If Weight=4 And Price 7 Then Price=1.1,选择结构If条件语句,例 Char=InputBox(输入一个字符,测试字符值)If Char=0 And Char=A And Char=a And Char=z Then MsgBox 输入的字符是小写字母 Else MsgBox 输入的字符是其它符号 End If,判断输入的是大写字母、小写字母、数字还是其它符号,选择结构Select Case选择语句,语法格式

5、:Select Case Case Case Case Else End Select功能:根据测试表达式的值,决定程序的流向。,值的类型是数值型、字符串型、日期型等,一旦与某个Case后的值相等,则执行这个Case中的,完成后执行End Select后的语句。如果所有的Case后的都不与项匹配,则执行Case Else后的。,说明:(1)测试表达式,可以是任何数值或字符串表达式。(2)“表达式列表”中的表达式类型必须和测试表达式的类型相同。(3)Case后面的表达式列表,其形式可以为四种形式:表达式 Case 13 表达式1 To表达式2 Case a To g Is关系运算表达式 Case

6、 Is 10 表达式1,表示2 Case 2,4,6,8 Case 6 To 8,12,Is=4,3.说明,选择结构Select Case选择语句,例 学生成绩分等 Data=InputBox(请输入一个成绩,成绩分等)Select Case Int(Data/10)Case 10 MsgBox 满分,成绩分等 Case is=9 MsgBox 优秀,成绩分等 Case 8 MsgBox 良好,成绩分等 Case 7 MsgBox 一般,成绩分等 Case 6 MsgBox 合格,成绩分等 Case Else MsgBox 不合格,成绩分等 End Select,3.1 选择结构Select

7、Case选择语句,例 测试输入的字符 Char=InputBox(请输入一个字符,测试)Select Case Char Case 0 To 9 MsgBox 字符是数字,测试 Case a To z MsgBox 字符是小写字母,测试 Case A To Z MsgBox 字符是大写字母,测试 Case Else MsgBox 字符是其它符号,测试End Select,循环语句,循环结构作用是重复执行一段程序 循环是有条件的、次数是有限的 VB的循环语句:ForNext、Do WhileLoop WhileWend 应用最多的:ForNext与Do WhileLoop,循环语句ForNext

8、循环,ForNext循环一般应用于循环次数已知的场合 For=初值 To 终值 Step 步长 语句块(循环体)Next 循环变量 工作原理,Step缺省为 1,循环语句ForNext循环,例 求1+3+5+7+99Private Sub Form_Click()Dim Sum As Integer,I As Integer Sum=0 保存累加和,先清零 For I=1 To 99 Step 2 Sum=Sum+I Next I MsgBox 1+3+5+99=&Sum,求和End Sub,本例的特点是数据项之间相差2,即Step的值为2,思考:例中当输出对话框出现时,I 的值是多少?如果省

9、略Step 2,程序的结果如何?For语句能不能改写成For I=99 To 1 Step-2?,循环语句ForNext循环,例 求斐波那契级数的前20项 Private Sub Form_Click()Dim A,B,I,T As Integer A=1:B=1 生成级数第一、二项 Print A;B;For I=3 To 20 T=A+B 产生级数新的一项 A=B 让B成为下一组的A B=T 原来A+B的值成为下一组的B Print B;If I Mod 6=0 Then Print Next IEnd Sub,斐波那契级数:第一、二项为1第三项开始,每一项 的值是前两项值之和,每6个数一

10、行,循环语句DoLoop循环,1.当型循环,先判断后执行,先执行后判断,特点:条件表达式成立执行循环体内容,循环语句DoLoop循环,例 Sum=1+2+3+N 求Sum不超过10000的最大整数值和数据项数N Private Sub Form_Click()Dim Sum,N As Integer N=0 开始时项数为0 Sum=0 保存累加值的变量Sum清零 Do While Sum=10000 N=N+1 Sum=Sum+N Loop Sum=Sum-N N=N-1 Print Sum=;Sum,N=;N End Sub,当Sum的值超出10000时循环才终止。因此Sum值要减去多加的一

11、个N;而在循环过程中,N也被多加了一个1,需要减去。,循环语句DoLoop循环,2.直到型循环,特点:条件表达式不成立执行循环体内容,循环语句DoLoop循环,例计算平均分(要求同例3.12)Private Sub Form_Click()Dim Data As Integer,Sum As Integer,N As Integer Sum=0:N=0 Data=InputBox(输入成绩,计算总分)Do Until Data=-1 Sum=Sum+Data N=N+1 Data=InputBox(输入数据,计算总分)Loop Print 全班平均分为:;Sum/NEnd Sub,Do Whi

12、le Data-1 Sum=Sum+Data N=N+1 Data=InputBox(输入数据,计算总分)Loop,循环语句whilewend循环,1.While循环结构语法格式:While 条件表达式 语句组 Wend,例在窗体中对比显示从16号字型到9号字型Dim i As Integeri=16 Form1.Font=新宋体 While i 6 Form1.FontSize=i Print i;号字型 i=i-1 Wend,2.功能 首先判断条件表达式,如果条件表达式的值为False就不执行循环体,循环结构结束,应用程序继续往后执行Wend后面的语句;如果条件表达式的值为True就执行循

13、环体,然后再返回判断条件。,循环语句两重循环,两重循环:在一个循环的循环体中还包含另一个循环例 在窗体上显示一个几何图形Private Sub Form_Click()Dim I,J As Integer I、J为循环变量 For I=1 To 8 I 控制行数(8行)Print Tab(10-I);定每行*的起始位 For J=1 To I J 控制每行输出I个*Print*;Next J Print 换行 Next IEnd Sub,注意:两重循环不能形成交叉,循环语句两重循环,例 输出乘法口诀表Private Sub Form_Click()Dim I As Integer,J As I

14、nteger,M As Integer For I=1 To 9 For J=1 To I M=I*J Print J Next J Print 打印换行 Next IEnd Sub,循环语句两重循环,例 计算 Private Sub Form_Click()Dim I As Integer,J As Integer Dim F As Long 阶乘值用长整型保存 Dim e As Double For I=0 To 10 F=1 每个阶乘值先置1以便累乘 For J=1 To I F=F*J Next J e=e+1/F Next I Print e=;e End Sub,本循环计算F=I!

15、,循环语句多重循环,多重循环:循环次数在两重以上的循环结构 例 计算将1角钱兑换成零钱有多少种方案 Private Sub Form_Click()Dim I,J,K,S As Integer S=0 统计兑换1角钱的方案数 For I=0 To 10 1分钱个数 For J=0 To 10 Step 2 2分钱个数 For K=0 To 10 Step 5 5分钱个数 If I+J+K=10 Then S=S+1 Next K Next J Next I MsgBox 1角钱兑换成零钱的方案有&S&种,兑换零钱End Sub,1角钱以下的硬币有1分、2分和5分种1角钱全换成1分需10个1角钱

16、全换成2分需5个1角钱全换成5分需2个,其他语句Exit与End,1.Exit语句Exit Do:跳出DoLoop循环Exit For:跳出ForNext循环例 判断一个正整数是否为素数(质数)N=InputBox(请输入一个正整数,验证素数)For I=2 To N-1 If N Mod I=0 Then Exit For End If Next I If I=N Then MsgBox N&是素数,验证素数 Else MsgBox N&不是素数,验证素数 End If,素数:一个正整数N除了能被1和自身所整除外,不能被其它任何数所整除。,其他语句Exit与End,2.End语句End:终止

17、程序的运行End Sub:终止一个过程;End Function:终止函数过程End If:终止条件语句End Type:终止类型声明End Select:终止情况语句End Property:终止属性过程End With:终止With语句,例如:Private Sub Command1_Click()EndEnd Sub,程序调试使用调试工具,1.断点调试 断点:程序执行到该此自动暂停 单击“继续”按钮,程序可继续执行。,设置断点:在代码窗口中单击该语句左侧的阴影边框。暂停时,将鼠标指针移动到程序中的各个变量上略作停留,系统将以浮动标签的方式显示该变量的值。,程序调试使用调试工具,2.逐语句执行 启动逐语句执行:“调试逐语句”或 按F8 终止逐语句执行:“调试跳出”3.使用立即窗口 程序运行处于暂停状态时,在立即窗口中输入:Print 或?4.逐过程 启动逐过程执行:“调试逐过程”或 按Shift+F8 终止逐过程执行:“调试跳出”,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号