下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、(1) 顺序结构 顺序结构就是系统按照程序中语句出现的先后次序执行各项操作。(流水账) (2) 分支结构 分支结构就是系统根据判断条件,选择一条符合条件的顺序结构程序块来执行。(三岔口、十字路口) (3) 循环结构 循环结构就是根据条件判断,不断重复的执行一部分代码,直到该条件要求你停止重复执行为止。(搬运工),三种基本程序结构,Dim x As Integer, y As Integer, sum As Integer, avg As Integer 声明变量 x = 100 y = 200 赋值 sum = x + y avg = (x + y) / 2 程序计算 Print 两数的和为:
2、; sum Print “两数的平均值为:”; avg 打印结果,(一)顺序结构,1. 赋值语句(P57) 形式:变量名表达式 对象.属性表达式 例:s!=0.1 Text1.Text “Welcome to Visual Basic 6.0 World” 只有当表达式是一种与变量兼容的数据类型时,该表达式的值才可以赋值给变量 。如 i%=“abc” ( 字符串不能赋值给数值变量) 执行过程:先求表达式的值,然后将值赋值给左边的变量。 如: x = x + 1 注意:虽然赋值号与关系运算符等于号都用“=”表示,VB系统会根据所处的位置自动判断是何种意义的符号,顺序结构包含的内容, 赋值符号“=
3、” 右边可以是变量、常量、函数调用等特殊的表达式。 左边一定只能是变量名或对象的属性引用。 下面的赋值语句都是错的: 5=X Abs(X)=20,2. 与用户交互函数和过程,(1) InputBox函数 InputBox(提示,标题,缺省,x 坐标位置,y坐标位置) 其中:提示 提示信息,标题 对话框标题,缺省输入区缺省值 函数返回字符类型. 例要在屏幕上显示如下的对话框:,提示,缺省,标题,sn = InputBox(请输入你的姓名 + vbCrLf + 然后单击确定, _ 输入框, 王晓明),(2) MsgBox函数和MsgBox过程 函数形式: 变量% = MsgBox(提示,按钮图标
4、,标题) 过程形式: MsgBox 提示,按钮图标 ,标题 提示:必需项 按纽:可选项(P64,表3-9) 常数 值 vbOKOnly 0 只显示OK按纽 vbOKCancel 1 只显示Ok和Cancel按纽 vbAbortRetryIgnore 2 只显示Abort、Retry、Ignore按纽 vbYesNoCancel 3 只显示Yes、No、Cancel按纽 标题:可选项,例要在屏幕上显示如下的对话框:,提示,标题,按钮,图标,s=MsgBox(密码错误! , 5+16, 输入密码) 所按按纽 S返回值 确定 1 取消 2 终止 3 重试 4 忽略 5,vbRetryCancel +
5、 vbCritical,3、 注释语句,其语法格式为:Rem 或 说明:1. 在Rem关键字和注释内容之间要加一个空格。 2. 如果在其他语句行后面使用Rem关键字,必需用冒号(:)与语句隔开。若用英文单引号“”,则在其他语句行后面不必加冒号(:)。 例如: Const PI=3.1415925 符号常量PI S=PI*r*r : Rem 计算圆的面积,VB中的事件过程命名格式为: 对象_事件,比如: Command1_Click() Text1_Change() Text1_KeyPress() Form_Click()(跟前几个有何差别) Form_Load(): 窗体运行的时候自动执行,
6、效果如何?,VB中的事件过程含义,生活中的很多道理或者策略都是一种分支结构,比如论持久战中的“敌进我退,敌驻我扰,敌疲我打,敌退我追”就是一个典型的分支。具体程序如下: If敌进 Then 我退 ElseIf敌驻 Then 我扰 ElseIf敌疲 Then 我打 ElseIf敌退 Then 我追 EndIf,(二)选择结构(分支结构)(P69),1. IfThen语句(单分支结构) If Then 语句块 End If 或 If Then 例: If xy Then t=x x=y y=t End If 或 If xy Then t=x: x=y: y=t,(二)选择结构(分支结构),2. I
7、fThenElse语句(双分支结构) If Then Else End If 或 If Then Else 例: If xy then max=x else max=y End if,3. IfThenElseIf语句(多分支结构),形式: If Then ElseIf Then Else 语句块 n+1 End If,不管有几个分支,依次判断,当某条件满足,执行相应的语句块,其余分支不再执行;若条件都不满足,且有Else子句,则执行该语句块,否则什么也不执行。 ElseIf不能写成 Else If,4. Select Case语句(情况语句),形式: Select Case 变量或表达式 C
8、ase 表达式列表1 语句块1 Case 表达式列表2 语句块2 Case Else 语句块n+1 End Select,: 与同类型的下面四种形式之一: 表达式 如: “A” 一组枚举表达式(用 逗号分隔) 如:2,4,6 表达式1 To 表达式2 如:60 To 100 Is 关系运算符表达式 如: Is 60,函数计算,1n=0 xn=1 P(n,x)= (3x2-1)/2n=2 (5x2-3)-x/2n=3 (35x2-30)*x2+3)/8n=4,Select Case n Case 0 p = 1 Case 1 p = x Case 2 p = (3 * x * x - 1) /
9、2 Case 3 p = (5 * x * x - 3) * x / 2 Case 5 p = (35 * x * x - 30) * x * x + 3) / 8 Case Else Print n的值不正确 End Select,函数计算,5选择结构的嵌套,If语句的嵌套是指 If 或 Else 后面的语句块中又包含 If 语句。 形式如下: If Then If Then End If End If,例:已知x,y,z三个数,使得xyz。 用一个IF语句和一个嵌套的IF语句 实现: If xy Then t=x: x=y: y=t If yz Then t=y: y=z: z=t If
10、xy Then t=x: x=y: y=t End If End If If语句的嵌套注意事项:书写锯齿型; If 与End If配对。,例:判断一元二次方程ax2+bx+c=0根的方式的程序,Dim a!, b!, c! a = InputBox(“请输入a的值”) b = InputBox(“请输入b的值”) c = InputBox(“请输入c的值”) If _ Then delta = b 2 - 4 * a * c If _ Then Print “方程有两个实根” ElseIf delta = 0 Then Print “方程有两个相等实根” Else Print “方程有两个虚根
11、” End If,Else If _ Then Print “方程仅有一个根” Else Print “方程无意义” End IfEnd If,提示: 当a0 是,有两个根。 设delta=b2-4ac 当delta0时,有两个不同的实根。 当delta=0时,有两个相同的实根。 当delta0时,有一个根。当a=0时,b=0方程无意义。,(三)循环结构,1. For循环语句 (一般用于循环次数已知) For 循环变量初值 to 终值 Step 步长 语句块 Next 循环变量,语句块 Exit For 语句块,例:,For i=2 To 13 Step 1 Print i ; Next i
12、Print “i=“, i,3,程序: Private Sub Form_Click() For i = 1 To 5 Print Tab(i); String(6 - I, ); Print Spc(6); String(I, ) Next i End Sub,循环执行次数 输出为:2 5 8 11 I=14,例:以下程序计算2到50间所有偶数的和,请补充完该程序。,Sub mult()Dimsum As IntegerDim i as integersum=0For _ to 50 If i Mod 2=_ Then _Next i Print sum End Sub,i=2 0 sum=
13、sum+i,2-1. DoLoop循环语句(用于控制循环次数未知),形式1:(当型循环) Do While 语句块 Exit Do 语句块 Loop,形式2:(直到循环) Do 语句块 Exit Do 语句块 Loop While ,2-2. DoLoop循环语句(用于控制循环次数未知),形式1:(当型循环) Do Until 语句块 Exit Do 语句块 Loop,形式2:(直到循环) Do 语句块 Exit Do 语句块 Loop Until ,例:下列程序段的运行结果是:,Sub sel()Dim n as Integeri=21:n=3Do Until i n i=i-nLoopPr
14、int “i=“;i End Sub,i=21(Do Until in),i=0(Do Until in),i=21(Do while in),i=3(Do while in),i=18(Loop Until in),i=0(Loop Until in),i=18(Loop while in),i=3(Loop while in),while,Until i n,while,例:以下程序计算1222+32-42+(N-1)2-N2,请补充完该程序。,N = Val(InputBox(请输入大于零的偶数)s = 0i = 1c = 1Dos = _ c = _ i = i + 1Loop Whi
15、le i = NPrint s,s + c*(i*10+2) -c,3. while.wend语句,使用格式如下: While Wend 说明:该语句的功能与Do While .Loop实现的循环完全相同。,比较三种循环结构,4.循环的嵌套,一个循环体内又包含了一个完整的循环结构称为循环的嵌套. 打印九九乘法表. 对于循环的嵌套,要注意以下事项: (1) 内循环变量与外循环变量不能同名; (2) 外循环必须完全包含内循环,不能交叉; (3) 不能从循环体外转向循环体内,也不能从外循环转向内循环, 反之则可以。,Private Sub Command1_Click() 循序结构赋值语句、输入输出
16、语句 分支结构单分支结构(if then) 双分支结构(if then else) 多分之结构 循环结构do loop、for .next while .wend End Sub,5、程序的基本结构与过程,函数与过程定义及其相互调用 形参与实参的相互关系及差别 参数传递的2种方式 变量的作用域 多种变量类型与参数传递的复杂程序分析,函数过程及作用域,(一)过程概述,在VB5.0/6.0中,除了系统提供的内部函数过程和事件过程外,用户可自定义过程下列两种过程: “Sub”保留字开始的为子过程 “Function”保留字开始的为函数过程 子过程和函数过程的区别: 函数过程有返回值。 而子过程无返回
17、值。,(二)子过程及函数过程的定义形式,StaticPublic|PrivateSub 子过程名(参数列表) 局部变量或常数定义 语句 End Sub StaticPublic|PrivateFunction 函数过程名(参数列表) As 类型局部变量或常数定义 语句 函数名 = 返回值 End Function,语句 Exit Sub 语句,语句 函数名 = 返回值 Exit Function 语句 函数名 = 返回值,例:课本P96,过程的分类,过程分为自定义过程与事件过程,区分的关键在于过程的名称。 自定义过程: 普通的过程名称,如: Private sub abc() 事件过程: Private sub Command1_click Private sub Form1_click Private sub Form1_Load,(三) 过程的调用,1 子过程的调用: 子过程名 参数列表 或 Call 子过程名(参数列表) 2 函数过程的调用: 变量名 = 函数过程名(参数列表) 子过程中定义的参数列表称之为形参。 父过程中
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年高职物理教育(物理教学)试题及答案
- 第三单元 倍数与因数(复习课件)-(北师大版)
- 蓝商务风企业员工绩效考核管理团队培训
- 《C语言程序设计:从计算思维到项目驱动(微课视频版)》第5章 数组 习题答案
- 制度培训高级感
- 工程岗安全培训内容记录课件
- 工程公司安全教育培训课件
- 成本控制与个体化方案的平衡
- 成功康复案例分享对患者的激励作用
- 大学2025年急诊医学冲刺押题卷
- 2026年渤海银行信贷审批官信贷审批考试题集含答案
- 2025年安徽省普通高中学业水平合格性考试数学试卷(含答案)
- 2025辽宁省文体旅产业发展集团有限责任公司招聘8人笔试重点题库及答案解析
- 社交媒体运营主管工作绩效评定表
- 辽宁省抚顺市省重点高中协作校2026届高一数学第一学期期末质量检测试题含解析
- 山东省济南市历下区2024-2025学年四年级上学期期末英语试题
- 投资者关系部经理笔试题及解析
- 贵州兴义电力发展有限公司2026年校园招聘备考题库及答案详解1套
- 人间处处有真情课件
- 防水补漏合同协议
- 2026泰安银行股份有限公司校园招聘70人备考题库附答案详解(综合题)
评论
0/150
提交评论