《vb程序的三种基本结构.ppt》由会员分享,可在线阅读,更多相关《vb程序的三种基本结构.ppt(14页珍藏版)》请在金锄头文库上搜索。
1、程序的三种基本结构第一节一、用一、用传统传统流程图表示算法流程图表示算法处理框起止框I/O框判断框流程线连接点1、传统流程图中的基本符号、传统流程图中的基本符号复习回顾复习回顾 2、三种基本结构的表示、三种基本结构的表示(1)顺序结构)顺序结构条件语句1语句2YN语句1语句2(2)选择结构)选择结构程序代码按照从上到下的顺序一行行的执行,执行过程中没有分支,没有重复。根据不同的条件判断来决定程序执行走向的结构。(3)循环结构)循环结构a) 当型当型循环循环b) 直到型循环直到型循环条件语句组YN( b )条件( a )YN语句组根据条件判断某些语句可能需要执行0次1次或多次的结构。 从从10个
2、数中选出最大的数个数中选出最大的数的算法流程图的算法流程图NMaxMax =A输入A开始再输入给AN=N+1打印Max结束YNNY一个算法中可能同时含有这一个算法中可能同时含有这三种基本的结构三种基本的结构一、顺序结构例:交换两个变量a,b的值Private Sub Command1_Click()Dim a as integer,b as integera=Val(InputBox(“输入a”)b=Val(InputBox(“输入b”)MsgBox(“交换后a= ”& a & “ b=”& b)End Sub设输入a=2,b=3 如何实现交换过程?a2b3交换过程c=aa=bb=c对应的流程
3、图:例:交换两个变量a,b的值Private Sub Command1_Click() Dim a as integer,b as integer,c as integer a=Val(InputBox(“输入a”) b=Val(InputBox(“输入b”) c=a a=b b=cMsgBox(“交换后a= ”& a & “ b=”& b)End Sub215开始结束34c=a输入a,b输出交换后a,b值a=bb=c1. IfThen语句(单分支结构) If Then 语句块 End If例例:已知两个数已知两个数x和和y,比较它们的大小,比较它们的大小, 使得使得x大于大于y. If xy
4、 Then t=x : x=y: y=t End If选择结构2. IfThenElse语句(双分支结构) If Then Else End If选择结构例:输出例:输出x,y两个中值较大的一个。两个中值较大的一个。IF XY Then Print XElse Print YEnd If练习:输入练习:输入x,输出其绝对值(不能用,输出其绝对值(不能用abs函数)函数)。3. IfThenElseIf语句(多分支结构) 形式: If Then ElseIf Then Else 语句块 n+1 End If选择结构使用使用IF语句实现的程序段如下:语句实现的程序段如下:If x=90 then
5、Print 优秀优秀ElseIf x=80 Then Print 良好良好 ElseIf x=70 Then Print 中等中等 ElseIf x=60 Then Print 及格及格 Else Print 不及格不及格End If例:输入一学生成绩,评定其等级。规则是:例:输入一学生成绩,评定其等级。规则是:90100分为分为“优秀优秀”,8089分为分为“良好良好”,7079分为分为“中等中等”,6069分分为为“及格及格”,60分以下为分以下为“不合格不合格”选择结构选择结构Select Case语句(情况语句)形式:Select Case 变量或表达式Case 表达式列表1语句块1C
6、ase 表达式列表2语句块2Case Else语句块n+1End Select数值型或字符串表达式选择结构与为下面四种形式之一: 表达式 A +5 一组枚举的值(用逗号分隔) 2, 4, 6, 8 表达式1 To 表达式2 60 to 100 Is 关系运算符表达式 Is 60Select Case x Case 90 to 100 Print 优秀优秀 Case 80 to 89 Print 良好良好 Case 70 to 79 Print 中等中等 Case 60 to 69 Print 及格及格 Case Else Print 不及格不及格End Select例:输入一学生成绩,评定其等
7、级。用例:输入一学生成绩,评定其等级。用select case 实现。实现。综合练习:输入综合练习:输入a,b,c求一元二次方程组的根。求一元二次方程组的根。Private Sub Command1_Click()a = Val(Text1.Text)b = Val(Text2.Text)c = Val(Text3.Text)If a = 0 Then MsgBox error! EndEnd Ifd = b 2 - 4 * a * cIf d 0 Then Label4.Caption = 无解 Label5.Caption = ElseIf d = 0 Then x = -b / (2 * a) Label4.Caption = X1=X2= & x Label5.Caption = Else X1 = (-b + Sqr(d) / (2 * a) X2 = (-b - Sqr(d) / (2 * a) Label4.Caption = X1= & X1 Label5.Caption = X2= & X2End IfEnd Sub