第07章 VB控制结构
VB控制结构
第7章 VB控制结构
Dim n1 As Integer, n2 As Integer, sum As Single, ave As Single Private Sub Command1_Click() Dim x As Single x = Val(InputBox("请输入x的值")) sum = sum + x If x < 60 Then n1 = n1 + 1 Else n2 = n2 + 1 End If ave = sum / (n1 + n2) End Sub
第7章 VB控制结构
注意:
1、条件可以加(),也可以不加()。
2、else与if之间没有空格
第7章 VB控制结构
例题2:从键盘输入学生的成绩,统计其中及格,
不及格的人数,总平均成绩。
Private Sub Form_Load()
Text1.Text = ""
Text2.Text = ""
Text3.Text = ""
第7章 VB控制结构
第二种做法:
Private Sub Command1_Click()
Dim str As String, countn As Integer
str = InputBox("请从键盘输入字符")
Print "输入字符的个数为:"; Len(str)
End Sub
第7章 VB控制结构
第7章 VB控制结构
三、循环结构
在实际应用中,经常会遇到一些操作并不复杂,但
需要反复处理的问题,这类问题,如果用顺序结构
VB_控制结构语句
控制结构语句有了控制结构就可控制程序执行的流程。
如果未复选控制流语句,程序便从左至右、自顶向下地贯穿这些语句。
有些简单程序可以只用单向流程来编写,有些流程可以依靠运算符的优先级来控制,但任何编程语言的效力和用途皆由其通过结构和循环改变语句顺序的能力而得。
一、判定结构Visual Basic 过程能够测试条件式,然后根据测试结果执行不同的操作。
Visual Basic 支持的判定结构有:1.If...Then2.If...Then...Else3.Select Case(一)、If...Then用 If...Then 结构有条件地执行一个或多个语句。
单行语法和多行块语法都可以使用: If 条件 Then 执行语句If 条件 Then执行语句End If条件通常是比较式,但它可以是任何计算数值的表达式。
Visual Basic 将这个值解释为 True 或 False:一个为零的数值为 False,而任何非零数值都被看作 True。
若条件为True,则 Visual Basic 执行 Then 关键字后面的所有执行语句。
可以使用单行或多行语法有条件地执行一个语句(下面两个例子等价):If X > 1 Then Y = 100If X > 1 ThenY = 100End If注意:If...Then 的单行格式不用 End If 语句。
如果条件为 True 时要执行多行代码,则必须使用多行块 If...Then...End If 语法。
If X >1 ThenY = 100 '注意,这里有一行以上的执行语句,必须使用多行块形式写Z = 200End If(二)、If...Then...Else用 If...Then...Else 块定义几个语句块,执行其中一个语句:If 条件1 Then[执行语句-1][ElseIf 条件2 Then[执行语句-2]] ...[Else[执行语句-n]]End IfVisual Basic 首先测试条件1。
第7讲 VB程序控制结构(2)
2. 举例说明 10:求阶乘n!。 例4-10:求阶乘n!。 11: 例4-11: 求π的近似值,公式为4*(1-1/3+1/5的近似值,公பைடு நூலகம்为4*(1-1/3+1/51/7+… 精度要求ε<=10 1/7+…),精度要求ε<=10-5。 12: 例4-12: 输出Fibonacci数列的前 数列的前n 输出Fibonacci数列的前n项,当某一项 的值大于等于1000时结束输出 时结束输出。 的值大于等于1000时结束输出。(Fibonacci 数列中的第1 项的值为1 从第3项开始, 数列中的第1、2项的值为1,从第3项开始, 任何一项的值是前2项的值相加) 任何一项的值是前2项的值相加)
4. 例4-7(P-81): 7(P-81): 使用While…Wend循环结构 循环结构, 使用While…Wend循环结构,编写程序求 1-100的和。 100的和 的和。
5. 注意点: 注意点: 由于循环结构中有从下向上的返回语句, 由于循环结构中有从下向上的返回语句, 所以特别要当心是否会出现“条件一直成立” 所以特别要当心是否会出现“条件一直成立” 的情况,即条件是“永真” 的情况,即条件是“永真”的。如果出现了这 种情况程序会无限止地执行下去, 种情况程序会无限止地执行下去,这在程序设 计中称为“死循环” 尽量要避免出现“ 计中称为“死循环”。尽量要避免出现“死循 环”。 当程序出现“死循环” 当程序出现“死循环”时,只要按键盘上 Ctrl+Break键就能中断程序的运行 键就能中断程序的运行。 的Ctrl+Break键就能中断程序的运行。
4. 例4-8(P-82): 8(P-82): 使用后置循环结构,编写程序求1 100的和 的和。 使用后置循环结构,编写程序求1-100的和。
VB程序基本控制结构
VB程序基本控制结构VB程序的基本控制结构有三种:顺序结构、条件结构和循环结构。
下面将详细介绍这三种结构。
1.顺序结构:顺序结构是指程序按照代码编写的顺序依次执行,不涉及任何的条件判断或循环。
简单来说,就是按照代码的顺序一行行执行。
2.条件结构:条件结构是指根据条件的不同,程序按照不同的路径执行不同的代码。
在VB中,我们可以使用if语句和select case语句来实现条件结构。
- if语句用法示例:if(condition) then'条件为真时执行的代码else'条件为假时执行的代码end if- select case语句用法示例:select case expressioncase value1' 当expression等于value1时执行的代码case value2' 当expression等于value2时执行的代码...case else' 当expression不等于以上任何一个值时执行的代码end select3.循环结构:循环结构是指根据特定的条件重复执行一段代码块。
在VB中,我们可以使用do while、do until、for、for each等语句来实现循环结构。
- do while语句用法示例:do while condition'循环执行的代码loop- do until语句用法示例:do until condition'循环执行的代码loop- for语句用法示例:for counter = start to end step stepValue'循环执行的代码next counter- for each语句用法示例:for each element in collection'循环执行的代码next element这些是VB程序的基本控制结构,它们的灵活运用可以实现各种复杂的程序逻辑。
举个例子,我们可以使用条件结构结合循环结构来实现一个计算1到100之间所有偶数和的程序:```Dim sum As Integer = 0For i = 1 To 100 Step 1If i Mod 2 = 0 Thensum += iEnd IfNextMsgBox("1到100之间所有偶数的和为:" & sum)```。
全国二级VB考试题型剖析及解题技巧
全国计算机等级考试二级VB考试题型剖析及解题技巧讲义前言每年的全国计算机等级考试一直是让很多同学头疼的问题,怎样才能顺利通过考试呢?综合分析历次考试试卷,我发现其实每次考试难度波动很小、题型类似或一样的很多。
因此在我们这门课程的教学中,我归纳总结了历年的所有题型,结合考试大纲知识点,以视频的方式为大家进行详细讲解与操作演示,帮助大家顺利通过考试,发挥出较好的水平!一、教材基本结构及往年考试分值分布2010年全国计算机等级考试二级VB考试,辅导用书《全国计算机等级考试二级教程:Visual Basic语言程序设计(2010年版) 》(高等教育出版社),本书共十五章:第1章 Visual Basic程序开发环境(2分左右,以识记为主)第2章对象及其操作(一般在机试题里考核)第3章简单程序设计(笔试2分左右)第4章 VB程序设计基础(笔试6分左右,一般结合其他章节知识点一起考核)第5章数据的输入与输出(本章内容通常与其他章节知识点结合起来考,机试题中出现在简单应用题和综合应用题中。
纯本章知识点在笔试中仅占2~4分左右)第6章常用标准控件(考试重点,笔试8~12分左右、机试的三种题型都考到标准控件)第7章VB控制结构(考试重点,笔试20分左右,一般和其他章节知识点结合考核、机试题中出现在简单应用题和综合应用题)第8章数组(考试重点:笔试6~10分左右、机试题中一般出现在综合应用题)第9章过程(考试重点:笔试6~10分左右、机试题中一般出现在综合应用题)第10章键盘与鼠标事件过程(笔试4分左右、机试一般出现在简单应用题)第11章菜单程序设计(笔试2~4分左右、机试出现机率不高)第12章对话框程序设计(笔试2分左右、机试出现机率不高)第13章多重窗体程序设计与环境应用( 机试题中偶尔出现在综合应用题,一般考标准模块内容)第14章数据文件(考试重点:笔试8~10分左右、机试题中出现在综合应用题)第15章上机指导二、考试题型题量考试题型剖析及解题技巧三、考试题型剖析及解题技巧1、VB考试笔试两种题型:选择题和填空题,其中选择题共35题,分值70分,填空题共15空,分值30分。
vb控制结构2
第7章 vb控制结构一、顺序结构程序的执行总是从上向下一句一句或者一块一块地执行。
每道程序均为顺序结构。
二、分支结构(选择结构)根据外界条件不同去执行不同的事情。
1、if的单行结构if条件then语句组1[ else语句组2]2、if的多行(块)结构if条件then语句组1[else语句组2]endif3、if的elseif结构(适用于多分支的情况)if条件1 then语句组1elseif条件2 then语句组2elseif条件3 then语句组3…………………[else语句组n]endif4、if的嵌套结构单行:if条件1 then语句组1 else if条件2 then语句组2 else语句组3多行:if条件1 then语句组1elseif条件2 then语句组2else语句组3endifendif有关以上4个语法结构的注意点:1、当有多个条件同时满足时,只有第1次满足的条件对应的语句组被执行,其他不管;2、单行结构不能有endif,多行结构一定要有endif;3、else子句可以省略;4、第3种格式中的elseif连在一起,第4种结构里的“单行”结构中else if是分开来的。
与分支结构相关的函数:iif(逻辑条件,真_值,假_值)iif(5<3,”a”,”b”)5、select case结构select case测试表达式case 条件1语句组1case 条件2语句组2……..case 条件n语句组n[case else语句组m]end select有关case后条件的限定:1、可以使用枚举的方法;2、可以使用关键字to;(小数据to 大数据)3、使用代词is来代表测试表达式。
(在case后不能有关系运算),不能对多个is表达式进行逻辑运算4、以上3种格式可以混合使用三、循环结构(重复结构)当外界条件满足时,反复地去执行某些事情。
1、当循环while 条件循环体(语句组)wend以下结构用来统计用户输入的数据的个数(循环的中inputbox一定要紧靠wend)x = InputBox("输入")While x >= 0 And x <= 100N=n+1x = InputBox("输入")Wend1、如果1个数的因子之和等于这个数本身,那么我们把这个数称为完全数。
VB控制结构
If <表达式1> Then <语句块1> ElseIf <表达式2> Then <语句块2> … [Else <语句块n+1>] End If
If <表达式> Then <语句1> Else <语句2>
例4.8 思考
p73更正后的方法3:
If mark < 60 Then Print "不及格" ElseIf mark < 70 Then Print "及格" ElseIf mark < 80 Then Print "良" ElseIf mark < 90 Then Print "中" Else Print "优" End If
错误!
例4.9 思考
4.2.3 条件函数
1、IIf函数
形式: IIf( 表达式1,表达式2 ,表达式3 ) 说明:
表达式1的值为True,则返回表达式2的值,否
则返回表达式3的值。
例:
max=IIf(x>y,x,y)
2、Choose函数
形式: Choose(整数表达式,选项列表) 说明:
例: 求三个数中的最大数。
方法1: If a > b And a > c Then max = a 方法2:
If b > a And b > c Then max = b If c > a And c > b Then max = c
方法2错误!MAX<b时没 再和c做比较
max = a If max < b Then max = b ElseIf max < c Then max = c Max = a End If If Max < b Then Max = b Else Max = c End If
vb_07程序控制结构
第七章 Visual Baisc控制结构
二级VB程序设计教程
第七章 Visual Baisc控制结构
例:输入学生成绩,进行优秀、良好、及格、不及 格的分段。 成绩大于90,为优秀;小于90且大于等于75,为良 好;小于75且大于等于60,为及格;小于60,为不及格;
二级VB程序设计教程
Case 2
Print “days=28” Case 4,6,9,11 Print “days=30” End Select
二级VB程序设计教程
第七章 Visual Baisc控制结构
第三节 For循环控制结构一、言如求:SUM=1+2+3+……+100的值。 执行:sum=0; sum=sum+1 sum=sum+2 sum=sum+3 ┋ sum=sum+100 即SUM在原值的基础上,加一个数,且比上一次加的数多1; 当加到100时,得到结果;
第七章 Visual Baisc控制结构
Private sub form_click() Score=str(inputbox(“请输入成绩",,“成绩输入对话框“))
If score>=90 then
Print “优秀” Elseif score>=75 then
Print “良好”
Elseif score>=60 then Print “及格”
除了1和它自身以外,还有没有别的约数,或者说,看能
否被其它的数整除,而作为M的约数,只会被比它小;因 此,逐个让2到M-1的数与M取余,如余数为0,则表示M能 被该数整除,M不是素数。
二级VB程序设计教程
第七章 Visual Baisc控制结构
7VB控制结构(III)(教案)
数据输出和输入
InputBox、MsgBox
常用算法
累加、累乘、素数判定、级数求和、找因数、显示图形、找最值
复习:
教材第四章的4.3, 4.4,4.5, 4.6
课后作业:
教材题四:9、10、11、12、13、14
2.了解Goto语句的用法
3.掌握Exit语句
4.了解循环嵌套结构的程序设计
5.了解多重循环的程序设计,掌握二重循环的程序设计
6.掌握程序设计的容
时间分配
1.单重循环
1)For…Next循环语句
2)Do … Loop循环语句
2.Goto语句的用法
3.Exit语句
4.循环嵌套结构的程序设计
5.多重循环的程序设计
6.综合举例,掌握程序设计的基本技巧
7.程序调试一般的方法
1、2
0.5学时
3
0.5学时
4
1.5学时
教学重点及
基本概念
For…Next循环语句
Do … Loop循环语句
Exit语句
二重循环的程序设计
程序设计的基本技巧
程序调试一般的方法
教
学
难
点
For…Next循环语句
课程名称
计算机程序应用基础(VB)
授课题目
Visual Basic控制结构(III)
学时数
3
课型
理论课
授课对象
本科
授课时间
第7周
教材情况
Visual Basic程序设计教程(第3版)高等教育出版社
教学
目的
及
要求
1.单重循环
1)掌握For…Next循环语句(重点)
VB程序控制结构语法格式
VB程序控制结构语法格式一.选择控制结构条件语句也称if语句,有两种结构:1单行结构;2块结构1.单行结构,格式:If条件thenthen部分Elseelse部分如果“条件”为true,执行“then部分”,否则执行“else部分”2.块结构,格式:If条件1then语句块1Elseif条件2 then语句块2……Else语句块nEnd if二.多分支控制结构情况语句:也称为select case语句或case语句格式:Select Case测试表达式Case 表达式列表1语句块1[case 表达式列表2[语句块2]]……[case else[语句块n]]End Select情况语句以SelectCase开头,EndSelect结束,功能是根据“测试表达式”的值,从多个语句块中选择符合条件的一个语句块执行。
表达式列表:1、表达式[,表达式] 2,表达式to表达式3、is关系运算表达式,关系运算符Case 2,4,6,8 case 1to 5 case is=12或caseis<a+b三.For循环控制结构For循环格式:For循环变量=初值to 终值[step步长(步长=1时可省略)][循环体][Exit for]Next[循环变量][,循环变量]……四.当循环控制结构格式:While条件[语句块]Wend1.“条件”为一布尔表达式,当循环语句的功能是:先对“条件”进行测试,然后才决定是否执行循环体,只有在“条件”为true时才执行循环体,如果条件从开始就不成立,则一次循环体也不执行。
2.如果条件总是成立,则不停地重复执行循环体(要有使循环趋于结束的语句)。
五.Do当循环控制结构1. 格式:Do[语句块][exit do]Loop[while\until 循环条件]Do ….Loop While 循环逻辑图Do ….Loop Until 循环逻辑图No2. 格式:D o[while\until 循环条件][语句块][exit do]LoopDo …While Loop 循环逻辑图Do …Until Loop 循环逻辑图注意:1. While 循环先判断条件是否成立,成立的情况下在执行循环体,do …while 不管条件是否成立先执行一次循环体再判断条件是否成立,就是说至少运行一次。
广东省高等教育自学考试Visual-Basic程序设计课程(课程代码07759)考试大纲
附件4:广东省高等教育自学考试Visual Basic程序设计课程(课程代码:07759)考试大纲目录一、课程性质与设置目的二、课程内容与考核目标第一章Visual Basic编程环境第一节可视化与事件驱动型语言第二节Visual Basic 的启动与退出第三节主窗口第四节其他窗口第二章对象第一节对象及其属性设置第二节窗体第三节控件第四节控件的画法和基本操作第三章建立简单的Visual Basic应用程序第一节语句第二节编写简单的Visual Basic应用程序第三节程序的保存、装入和运行第四节Visual Basic应用程序的结构与工作方式第四章数据类型、运算符与表达式第一节基本数据类型第二节常量和变量第三节变量的作用域第四节常用内部函数第五节运算符与表达式第五章数据输入输出第一节数据输出—Print方法第二节数据输入—InputBox函数第三节MsgBox函数和MsgBox语句第四节字形第六章常用标准控件第一节文本控件第二节图形控件第三节按钮控件第四节选择控件——复选框和单选按钮第五节选择控件—列表框和组合框第六节滚动条第七节计时器第八节框架第九节焦点与Tab顺序第七章Visual Basic 控制结构第一节选择控制结构第二节多分支控制结构第三节For循环控制结构第四节当循环控制结构第五节Do循环控制结构第六节多重循环第七节GoTo型控制第八章数组与记录第一节数组的概念第二节动态数组第三节数组的基本操作第四节数组的初始化第五节控件数组第六节记录第七节记录数组第九章过程第一节Sub过程第二节Function过程第三节参数传送第四节可选参数与可变参数第五节对象参数第六节局部内存分配第七节递归第十章键盘与鼠标事件第一节KeyPress事件第二节KeyDown和KeyUp事件第三节鼠标事件第四节鼠标光标的形状第五节拖放第十一章菜单程序设计第一节Visual Basic中的菜单第二节菜单编辑器第三节用菜单编辑器建立菜单第四节菜单项的控制第五节菜单项的增减第六节弹出式菜单第十二章对话框程序设计第一节概述第二节文件对话框第三节其他对话框第十三章多窗体程序设计与环境应用第一节建立多窗体应用程序第二节多窗体程序的执行与保存第三节Visual Basic工程结构第四节闲置循环与DoEvents语句第五节系统对象第十四章文件第一节文件概述第二节文件的打开与关闭第三节文件操作语句和函数第四节顺序文件第五节随机文件第六节用控件显示和修改随机文件第七节二进制文件第八节文件系统控件第九节文件基本操作三、关于大纲的说明与考核实施要求【附录】题型举例一、课程性质与设置目的(一)课程性质与设置目的本课程是广东省高等教育自学考试数字媒体艺术专业(独立本科段)的必考课程之一,本课程是数字媒体艺术专业的应用型基础课。
vb控制结构7
3.6 基本语句—选择结构程序设计
说明: ① 不管有几个分支,程序执行一个分支后,其余分支不再执 行。 ② ElseIf子句的数量没有限制,可根据需要使用任意多个 ElseIf子句。 ③ 语句中的ElseIf子句和Else子句都是可选项,可省略。 ④ If…Then…ElseIf 只是 If…Then…Else 的一个特例。 示例3-15:身份验证 分析
一个高质量、优秀的应用程序除了要 保证运行正确,还应具备以下几点: • 应用程序容易理解。 • 应用程序易于维护和升级。 • 应用程序具有良好的组织结构。 • 程序运行时尽量少占用计算机的资源。
3.6 基本语句
一、顺序结构程序设计
1.数据输入 2.数据输出 3.Rem、Stop、End语句 4.顺序结构程序设计示例
3.6 基本语句—顺序结构程序设计
注意: 函数中的各项参数次序必须一一对应, 除了“prompt”一项不能省略外,其余各项均为 可选项,如果要省略某些参数,则必须加入相 应的逗号分割符。
3.6 基本语句—顺序结构程序设计
⑶ MsgBox函数和MsgBox过程 MsgBox函数格式: : 变量% = MsgBox (prompt [, buttons] [,title]) MsgBox过程格式: MsgBox (prompt [, buttons] [,title]) 功能:打开一个消息框,等待用户选择一个按钮。 说明: ① “prompt”和“title”的含义与InputBox()中对应的参 数相同。 ② “buttons(按钮)”:可选项,为整型参数。 ③ “变量%”: 返回值。
3.6 基本语句—选择结构程序设计
说明: ① 测试变量或表达式只能是数值表达式或字符串表达式,不 能是逻辑表达式。 ② 语句块是由一行或多行VB语句组成的。 ③ 表达式表与测试变量或表达式的类型必须相同,每一个表 达式表是一个或几个值的列表。表达式表有四种形式: • 一个表达式。如:Case 如:Case 1,3,5,7 6 • 一组枚举表达式,即多个表达式,表达式之间用逗号隔开。
第7章 VB控制结构
7.1.3 条件函数 ( 1) IIf 函数 Result=IIf (条件1,条件1为True时的值,条件 1为False
时的值)
例如,将 x,y中大的数放入Tmax变量中,语句如下: Tmax=IIf ( x > y, x, y)
15
7.1.3 条件函数 ( 2) Choose函数
Result=CΒιβλιοθήκη oose(数字类型变量,值为 1的返回值,值为2的返回值
18
说明:
• 1)表达式:可以是数值表达式或字符串表达式,通常用 数值类型或字符串类型的变量。 • 2 ) Case 值列表 i: 是 Case 子句,如果 表达式与某 个 Case 子句的值列表 i 相匹配,则执行该 Case 子句中的语
句组 i 。
19
• • •
Case子句中的“值列表i”可以有三种表示形式: ①一个或多个常量,多个常量之间用“,”分开; ②使用 To关键字,用以指定一个数值范围,要求小 数在 To之前,如1 To 10;
错误
23
选择结构常见错误
1 .在选择结构中缺少配对的结束语句
对多行式的If块语句中,应有配对的End If语句结束。 Select应有End Select作为结束语句。 2. 多边选择 ElseIf关键字的书写和条件表达式的表示
条件:比较三个数之间的大小关系 结构:需要两个选择结构,每个至多有两个分支
语句:书写出每种情况下的语句(组)
7
Private Sub Command1_Click() Dim a, b, c As Single, max As Single a = Val(Text1.Text): b = Val(Text2.Text): c = Val(Text3.Text) max = a If max < b Then max = b '单行条件语句 If max < c Then max = c '单行条件语句 Text4.Text = max End Sub
第7章VB控制结构
例4-14演示
1. If语句
例4-15:从键盘输入一位作者的稿酬,根据 此稿酬计算出应缴纳的税金和扣除税金后作 者实际得到的稿酬。计算税金的方法是: 800元以内(含800,下同)免税,4000元 以内除800元以外的部分按14%上税,4000 以上按80%的14%上税。
1. If语句
Private sub form_click() Dim m as single,tax as single,wage as single m=Val(inputbox(“请输入稿酬”)) If m<=800 then tax=0 ElseIf m<=4000 Then tax=(m-800)*0.14 Else tax=m*0.8*014 End If wage=m-tax print “稿酬为:”;m, “税收为:”;tax,“实际酬金为”;wage End sub
例4-13演示
End sub
1. If语句
例4-14:编写一程序,能将大写字母方式 输入的一个字符转换为小写字母,小写字 母的字符转换成大写字母,其它非字母字 符不改变。
1. If语句
Private sub form_click() Dim ch as string ch=inputbox(“请输入一个字符”) print “输入的原始字符为”;ch If ch>=“A” and ch<=“Z” then ch=Lcase(ch) ElseIf ch>=“a” and ch<=“z” Then ch=Ucase(ch) Else ch=ch End If print “输出字符为”;ch End sub
例4-10演示源自1. If语句例4-11:输入a,b,c三个整数,输出其中最大的
控制结构VB课件
单行形式: If i Mod 2 = 0 Then Print "偶数" 块形式:
If i Mod 2 = 0 Then
Print "偶数"
' 语句块
End If
单行形式的If…Then…Else… 语句
If 条件表达式 Then 语句块1 Else 语句块2
注意:“ElseIf”关键字中间没有空格。
Private Sub cmdRank_Click() Dim intMark As Integer intMark = CInt(txtInput.Text) If intMark >= 90 Then txtOutput.Text = "优秀" Else If intMark >= 80 Then txtOutput.Text = "良好" Else If intMark >= 70 Then txtOutput.Text = "中等" Else If intMark >= 60 Then txtOutput.Text = "及格" Else If intMark >= 30 Then txtOutput.Text = "补考" Else txtOutput.Text = "重修" End If End If End If End If End If
End Sub
Private Sub cmdRank_Click() Dim intMark As Integer intMark = CInt(txtInput.Text) If intMark >= 90 Then txtOutput.Text = "优秀" ElseIf intMark >= 80 Then txtOutput.Text = "良好" ElseIf intMark >= 70 Then txtOutput.Text = "中等" ElseIf intMark >= 60 Then txtOutput.Text = "及格" ElseIf intMark >= 30 Then txtOutput.Text = "补考" Else txtOutput.Text = "重修" End If
第7章VisualBasic控制结构
单 击 窗 体
确 定
函数名 功能
返回值 示例
IsNumeric 指出表达式的运算结果是 布尔型 MyCheck = IsNumeric(“34”) 否为数
IsArray 指出变量是否为一个数组 布尔型 MyCheck = IsArray(MyArray)
IsDate
指出一个表达式是否可以 布尔型 MyCheck = IsDate("February
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
4. If语句嵌套
If语句嵌套使用可形成多分支的条件语句结构
If <条件表达式1> Then
If <条件表达式2> Then <语句块4>
<语句块1>
Else
ElseIf <条件表达式2> Then
<语句块5>
<语句块2>
End If
… Else
说明:
<语句块3> ElseIf之间不要加空格。
End If
等复合) 5) 可以采用上述几种的混合形式,相互之间用”,”号隔开
示例:例7多分支结构.vbp
7.2 多分枝控制结构-Select Case选择语句
[例7.6] 学生成绩分等
Data = InputBox("请输入一个成绩", "成绩分等")
VB的基本控制结构
顺序结构是一种线性结构,也是程序设计中最简单、
最常用的基本结构。它在程序运行过程中,按照语 句出现的顺序从上到下依此执行。顺序结构流程图 如下图所示,先执行语句A,再执行语句B。
顺序结构中主要的语句是赋值语句,通过赋值语句, 可以在程序中改变变量的值,或改变对象属性值。 其语法格式为:
[Let]变量=表达式 [Let]对象.属性=表达式
其中表达式中可以包含变量、常量、属性。此时等 号称为赋值等号。例如:
Dim A As String
A=Text1.Text Label1.Caption=A
说明:
(1)赋值语句兼有计算和赋值双重功能。
(2)“=”是赋值等号,与数学上的等号意义不同。
(3)赋值等号两边的数据类型通常要求一致,但VB 提供的对某些数据类型的自动转换机制,可强制变 量转换为适当的数据类型。例如,当逻辑型赋值给 数值型时,True转换为 -1,False转换为0;反之, 非0转换为True,0转换为False;
程序代码: Dim I%, s % FFoorrI I==10ToTo101steSpte1p -
1 s=s+I
Next I
Print I, s
循环体的执行次数是多少 ? 输出的I、S的值是多少 ?
For I = 1 To 10执行多少次?
例1:求1+2+3+4+ …+10之和. 分析: •重复过程(循环体): + •初值、终值和增量:1、10、1 Dim I, s As Integer
EEnnddsseelelecctt
例7 编写一个加油站计费程序
在“种类”中选择油品种类,界面上的说明文字将随之 改变,并将“数量”文本框设为焦点;在数量文本框中输入 需购的油品数量后,单击“计算”按钮,在“总价”文本框 显示所购油品种类应付的金额。已知汽油单价:
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
F
语句组2 语句组2
执行二分支IF语句时 首先判断条件。若条件成立, 执行二分支 IF语句时, 首先判断条件。 若条件成立, 则执 IF语句时, Then后面的语句 或语句组1 否则执行Else 后面的语句1 Else后面的语句 行Then后面的语句1或语句组1,否则执行Else后面的语句 或者语句组2 2或者语句组2。
按钮Command1代码为: 按钮Command1代码为: Command 按钮Command2代码为: 按钮Command2代码为: Command
Private Sub Command1_Click() Private Sub Command2_Click() f = Val(Text1.Text) c = Val(Text2.Text) c = 5 * (f - 32) / 9 f = 9 * c / 5 + 32 Text2.Text = c Text1.Text = f End Sub End Sub
13
7.2 选择控制结构
三、选择结构的嵌套 If语句也可以出现在If语句的 语句也可以出现在If If语句也可以出现在If语句的 Then 或 Else 中。这就是 选择结构的嵌套,也叫条件语句的嵌套。 选择结构的嵌套,也叫条件语句的嵌套。 条件1 If 条件1 Then 条件2 if 条件2 Then 语句组1 语句组1 Else 语句组2 语句组2 End if Else 语句组3 语句组3 End If
4
7.1 顺序结构
顺序结构是一种最常用、最简单、最基本的结构。 顺序结构是一种最常用、 最简单、 最基本的结构。 在这种 结构中, 结构中 , 程序根据语句中的命令的书写顺序依次执行的命令 序列。 次执行, 序列。程序的执行按 命令的排列顺序从上到下依 次执行,每 一次。 条 语句均被执行 一次。 前面编写的那些简单的程序, 前面编写的那些简单的程序, 即往控件中的事件过程填写代码 等,多数为顺序结构。 多数为顺序结构。 其程序结构如右图所示: 其程序结构如右图所示:
9
y=
2 2sin 2 x + 4x + 1 − 3,
x≥0
【案例7.3】按大小排序 案例7
分析:定义变量x 表示任意输入的两个数。依题意, 分析:定义变量x和y表示任意输入的两个数。依题意,当 思考:对三个任意的数,按从小到大的顺序输出。 例 ::对三个任意的数,按从小到大的顺序输出。程序该如 从键盘任意输入两个数 , 思考 从键盘任意输入两个数,将其按由小到大的顺序显示在 当前窗体上。 当前窗体上。 x>y时 要交换x 的值,所以要定义一个中间变量t x>y时,要交换x与y的值,所以要定义一个中间变量t 何写?? 何写?? Private Sub Form_Click() Dim x As Single, y As Single , t As Single Val(InputBox("输入 的值","输入框1 输入x ","输入框 x = Val(InputBox("输入x的值","输入框1")) (InputBox("输入 的值","输入框2 输入y ","输入框 y = Val (InputBox("输入y的值","输入框2")) If x>y then t=x x=y y=t End if 按由小到大顺序输出: Print "按由小到大顺序输出:" ; x ; y End Sub
14
条件1 If 条件1 Then 语句组1 语句组1 Else 条件2 if 条件2 Then 语句组2 语句组2 Else 语句组3 语句组3 End if End If
【案例7.5】分段函数选择嵌套 案例7
例:编写程序,输入X的值,按照以下表达式计算Y的值。 编写程序,输入X的值,按照以下表达式计算Y的值。 (X>0 1+ X 2 (X>0) ① (X=0 Y= 0 (X=0) ② (X<0 1- X 2 (X<0) ③ 分析: 我们要根据输入的X 分析 : 我们要根据输入的 X 的值的范围确定选用哪个表达 式计算Y 式计算Y: 如果X> 成立,则利用表达式①计算Y的值; X>0 如果X>0成立,则利用表达式①计算Y的值; 否则,如果X 成立,则利用表达式②计算Y的值; 否则,如果X=0成立,则利用表达式②计算Y的值; 否则,X<0一定成立,利用表达式③计算Y的值。 否则,X<0一定成立,利用表达式③计算Y的值。 这就形成了选择结构的嵌套。 这就形成了选择结构的嵌套。 计算按钮代码如下: 计算按钮代码如下:
语句组2 语句组2 语句组1 语句组1
……
语句组n 语句组n
5
【案例7.1】顺序结构程序示例 案例7
编程求摄氏温度与华氏温度的转换。 编程求摄氏温度与华氏温度的转换。 分析:我们用F 分析:我们用F表示华氏温度 用C表示摄氏温度 则它们的关系为: 则它们的关系为: C=5(F-32)/ )/9 C=5(F-32)/9 F=32 C/5 32+ 或:F=32+9C/5
10
【案例7.4】行李托运计费 案例7
从甲地到乙地托运行李。行李重量在50千克以内时, 50千克以内时 从甲地到乙地托运行李。行李重量在50千克以内时,每千 80元 超过50千克时,其超过部分每千克1 10元 50千克时 克 0.80 元 ; 超过 50 千克时 , 其超过部分每千克 1.10 元 。 编 写程序,计算托运行李W千克时所付的运费。 写程序,计算托运行李W千克时所付的运费。 分析:我们用W表示行李的重量, 表示运费,依题意, 分析:我们用W表示行李的重量,F表示运费,依题意,我 们可以得到以下计算公式: 们可以得到以下计算公式: 0. 8× W (W ≤ 50 ) ① F= 50× (W-50) 50) 50×0.8+(W-50)×1.1 (W > 50) ② 界面如下: 界面如下: 对象 属性 属性值
6
7.2 选择控制结构
选择控制结构是在程序执行时,根据不同的条件, 选择控制结构是在程序执行时, 根据不同的条件, 选择执 行不同的程序语句,用来解决有选择、有转移的诸多问题。 行不同的程序语句,用来解决有选择、有转移的诸多问题。 一、单分支条件结构 其格式下列两种, 其格式下列两种,流程如右图所示 : 语句1 行方式: 行方式:If 条件 Then 语句1 条件 T 方式: 块方式:If 条件 Then 语句组 语句组1 语句组1 End If 例:If a>b Then max=a 等价于: 等价于:If a>b Then max=a End If
Visual Basic语言程序设计 Basic语言程序设计
——2011计算机等级考试辅导 ——2011计算机等级考试辅导 2011 主讲教师: 主讲教师:许 兆 华
目
第1章 公共基础知识
录
第8章 数组
VB程序开发环境 第2章 VB程序开发环境 第9章 过程 第3章 对象及其操作 第4章 数据类型及运算 第5章 数据的输入输出 第6章 常用标准控件 第7章 VB控制结构 VB控制结构
8
【案例7.2】计算分段函数 案例7
3x 2 +4x − 5, x<0 分析:本题在选择条件时,可以选择x< 作为条件, x<0 分析 : 本题在选择条件时 , 可以选择 x<0 作为条件 , 也可以 选择x≥ 作为条件。这里选择x≥ 作为条件。 x≥0 x≥0 选择x≥0作为条件。这里选择x≥0作为条件。 ①用单分支结构实现 [If x<0 Then] y=3*x^2+4*x-5 If x≥0 Then y=2*sqr(2*(sin(x))^2+4*x+1)-3 ②用双分支结构实现 If x≥0 Then y=2*sqr(2*(sin(x))^2+4*x+1)-3 Else y=3*x*x+4*x-5 End If
12
【思考与练习】选择结构程序 思考与练习】
计算z的值: 大于y z=x;否则z=y z=y。 1.计算z的值:当x大于y时,z=x;否则z=y。下列语句行错 误的是( 误的是( )。 A) If x=y Then z=x : z=y B) If x>y Then z=x Else z=y C) z=y : If x>y Then z=x D) If x<=y Then z=y Else z=x 编程实现:从键盘输入一个整数,判断它是奇数还是偶数, 2. 编程实现 :从键盘输入一个整数, 判断它是奇数还是偶数, 并输出相应的提示信息。 并输出相应的提示信息。 给定一个年份( 从键盘输入) 判断它是否闰年。 3. 给定一个年份 ( 从键盘输入 ) , 判断它是否闰年 。 闰年的条 件是:能被4整除但不能被100整除,或能被100 100整除 100整除且能被 件是:能被4整除但不能被100整除,或能被100整除且能被 400整除 整除。 400整除。
Form1 Label1 Label2 Command1 Command2 Caption Name Name Name Caption Name Caption 例:行李托运计费 lblW lblF cmdCalculate 计算 cmdClose 关闭
11
【案例7.4】行李托运计费 案例7
计算按钮的程序代码如下: 计算按钮的程序代码如下: Private Sub cmdStart_Click() Dim W!, F! 输入行李的重量")) W = Val(InputBox("", "输入行李的重量")) lblW. 行李重: 千克" lblW.Caption = "行李重: " & W & "千克" If W <= 50 Then F = 0. 8 * W Else 50) F = 50 * 0.8 + (W - 50) * 1.1 End If lblF.Caption = "运费:" & F & "元" lblF. 运费: End Sub