程序设计的3种基本结构.ppt
《程序设计的3种基本结构.ppt》由会员分享,可在线阅读,更多相关《程序设计的3种基本结构.ppt(87页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第3章章 程序设计的程序设计的3种基本结构种基本结构 本章内容及要求:本章内容及要求:(1)了解算法概念及表示,掌握用)了解算法概念及表示,掌握用NS流程图表示算法;流程图表示算法;(2)熟练掌握赋值语句、输入)熟练掌握赋值语句、输入/输出消息框函数的使用;输出消息框函数的使用;(3)熟练掌握行)熟练掌握行ifif语句、块语句、块ifif结构、结构、Select CaseSelect Case情况选情况选择结构有使用,掌握选择的嵌套结构;择结构有使用,掌握选择的嵌套结构;(4)熟练掌握实现循环结构的)熟练掌握实现循环结构的For/NextFor/Next循环结构及循环结构及Exit Exit
2、 ForFor语句、语句、Do/LoopDo/Loop循环结构的使用,掌握多重循环;循环结构的使用,掌握多重循环;(5 5)能够运用)能够运用3 3种结构进行综合程序设计。种结构进行综合程序设计。重点:重点:选择结构及循环结构的实现及其应用选择结构及循环结构的实现及其应用难点:难点:算法设计、选择的嵌套及多重循环结构算法设计、选择的嵌套及多重循环结构3.1 算法及算法的表示算法及算法的表示 3.1.1 算法概述算法概述 什么是算法:什么是算法:广义地讲:广义地讲:算法是为完成一项任务所应当遵循的算法是为完成一项任务所应当遵循的一步一一步一步的规则的、精确的、无歧义的描述,步的规则的、精确的、无
3、歧义的描述,它的总步数是有限的。它的总步数是有限的。狭义地讲:狭义地讲:算法是解决一个问题采取的方法和步骤的描述。算法是解决一个问题采取的方法和步骤的描述。下面通过两个简单的例子加以说明:下面通过两个简单的例子加以说明:1)输入输入A、B、C。2)A与与B中大的一个放入中大的一个放入MAX中。中。3)把把C与与MAX中大的一个放入中大的一个放入MAX中。中。4)输出输出MAX,MAX即为最大数。即为最大数。例例3.1 输入三个数,然后输出其中最大的数。输入三个数,然后输出其中最大的数。将三个数依次输入到变量、将三个数依次输入到变量、B、C中,设变量中,设变量MAX存放存放最大数。其算法如下:最
4、大数。其算法如下:3.1 算法及算法的表示算法及算法的表示 例例3.2 输入输入10个数,打印输出其中最大的数。个数,打印输出其中最大的数。算法设计如下:算法设计如下:(1)输输入入1个个数数,存存入入变变量量A中中,将将记记录录数数据据个个数数的的变变量量N赋赋值为值为1,即,即N=1 (2)将)将A存入表示最大值的变量存入表示最大值的变量Max中,即中,即Max=A (3)再再输输入入一一个个值值给给A,如如果果AMax 则则 Max=A,否否则则Max不变不变 (4)让记录数据个数的变量增加)让记录数据个数的变量增加1,即,即N=N+1 (5)判判断断N是是否否小小于于10,若若成成立立
5、则则转转到到第第(3)步步执执行行,否否则转到第(则转到第(6)步)步 (6)打印输出)打印输出max3.1 算法及算法的表示算法及算法的表示 3.1.2 算法的特性算法的特性 1有穷性有穷性2确定性确定性3有有0个或多个输入个或多个输入4有一个或多个输出有一个或多个输出5有效性有效性3.1 算法及算法的表示算法及算法的表示 3.1.3 算法的表示算法的表示 一、自然语言与伪代码表示算法一、自然语言与伪代码表示算法自然语言:自然语言:就是指人们日常使用的语言,可以是汉语、英就是指人们日常使用的语言,可以是汉语、英语或其它语言。语或其它语言。伪代码:伪代码:是用介于自然语言和计算机语言之间的文字
6、和符是用介于自然语言和计算机语言之间的文字和符号(包括数学符号)来描述算法。号(包括数学符号)来描述算法。3.1 算法及算法的表示算法及算法的表示 例如:例例如:例3.1可用如下的伪代码表示可用如下的伪代码表示Begin(算法开始)(算法开始)输入输入 A,B,C IF AB 则则 AMax 否则否则 BMax IF CMax 则则 CMaxPrint MaxEnd(算法结束算法结束)3.1 算法及算法的表示算法及算法的表示 二二 用用传统传统流程图表示算法流程图表示算法处理框起止框I/O框判断框流程线1、传统流程图中的基本符号、传统流程图中的基本符号3.1 算法及算法的表示算法及算法的表示
7、2、三种基本结构的表示、三种基本结构的表示(1)顺序结构)顺序结构条件语句1语句2YN语句1语句2(2)选择结构)选择结构3.1 算法及算法的表示算法及算法的表示(3)循环结构)循环结构a)当型循环当型循环b)直到循环直到循环条件语句组YN(b)条件(a)YN语句组3.1 算法及算法的表示算法及算法的表示 三种基本结构的特点:三种基本结构的特点:(1)只有一个入口)只有一个入口(2)只有一个出口)只有一个出口(3)不存在死语句)不存在死语句(4)不存在死循环)不存在死循环例:例:例例3.2输入输入10个数,打印输出其中的最大的数的流程图个数,打印输出其中的最大的数的流程图3.1 算法及算法的表
8、示算法及算法的表示 从从10个数中选出最大的数个数中选出最大的数的算法流程图的算法流程图NMaxMax=A输入A开始再输入给AN=N+1打印Max结束YNNY3.1 算法及算法的表示算法及算法的表示 3.1.4 用用NS流程图表示算法流程图表示算法 将全部算法写在一个矩形框内,在矩形内还可包含其将全部算法写在一个矩形框内,在矩形内还可包含其它从属于它的框它从属于它的框三种基本结构的三种基本结构的NS图表示:图表示:语句A语句B语句A语句B条件YN1、顺序结构、顺序结构2、选择结构、选择结构3.1 算法及算法的表示算法及算法的表示(3)循环结构)循环结构a)当型循环当型循环b)直到循环直到循环例
9、:例:画出从画出从10个数中选出最大的数的个数中选出最大的数的NS 流程图流程图语句组当条件成立(a)语句组直到当条件成立(b)3.1 算法及算法的表示算法及算法的表示 传统流程图NMaxMax=A输入A开始再输入给AN=N+1打印Max结束YNNY输入A当NMaxYN输入A3.1 算法及算法的表示算法及算法的表示 Private Sub Form_Click()Dim a%,max%,i%a=Val(InputBox(A=?)max=a For i=2 To 10 a=Val(InputBox(A=?)If a max Then max=a Next i Print Max=;maxEnd
10、Sub下面是例下面是例3.2的计算机的计算机 程序,即为用计算机语言表示算法:程序,即为用计算机语言表示算法:3.1 算法及算法的表示算法及算法的表示 3.1.6 结构化程序设计方法(补充)结构化程序设计方法(补充)(一)、用计算机解决问题的过程(一)、用计算机解决问题的过程提出、分提出、分析问题析问题确定算确定算法模型法模型设计设计算法算法编写编写程序程序调试调试程序程序分析输分析输出结果出结果正确正确合理合理结束结束不正确不正确3.1 算法及算法的表示算法及算法的表示(二)、结构化程序设计思想(二)、结构化程序设计思想自顶向下、逐步细化、模块化自顶向下、逐步细化、模块化自顶向下:自顶向下:
11、先从全局、整体设计先从全局、整体设计逐步细化:逐步细化:将一个问题分解成几个较小的问题解决将一个问题分解成几个较小的问题解决模块化:模块化:将一个大任务分解成若干个较小的部分,将一个大任务分解成若干个较小的部分,每每 个部分承担一定功能,称为个部分承担一定功能,称为“功能模功能模块块”例:给例:给100个整数,打印输出其中的素数个整数,打印输出其中的素数3.1 算法及算法的表示算法及算法的表示 S1NS流程图流程图输入输入100个数存入个数存入X1,x2,x100打印打印x1.x100中中不等于不等于0的数的数让让x1,x2,x100中的中的非素变为非素变为0S3S2输入输入xi当当i=100
12、i=i+1i=1S1细化细化xi0当当i=100i=i+1i=1YN打印打印xiS3细化细化3.1 算法及算法的表示算法及算法的表示 S1NS流程图流程图输入输入100个数存入个数存入X1,x2,x100打印打印x1.x100中中不等于不等于0的数的数让让x1,x100中的中的非素变为非素变为0S3S2S2细化细化判断判断xi是否是素数,是否是素数,若不是则将若不是则将xi=0当当i=100i=i+1i=1S21r=0rxi/2S21细化细化3.1 算法及算法的表示算法及算法的表示 输入输入100个数存入个数存入X1,x2,x100打印打印x1.x100中中不等于不等于0的数的数让让x1,x1
13、00中中的非素变为的非素变为0细化后的流程图细化后的流程图输入输入xi当当i=100i=i+1i=1当当ixi/2i=i+1xi0当当i=100i=1YN打印打印xii=i+13.2 顺序结构顺序结构3.2.1 3.2.1 赋值语句赋值语句 形式形式:变量名表达式变量名表达式 对象对象.属性表达式属性表达式 功能:功能:将表达式的值赋值给变量名或指定对象的属性。将表达式的值赋值给变量名或指定对象的属性。一般用于给变量赋值或对控件设定属性值一般用于给变量赋值或对控件设定属性值.例:例:sRate!=0.1 Text1.Text 欢迎使用欢迎使用Visual Basic 6.0”说明:说明:1 执
14、行过程:先求表达式的值,然后将值赋值给左边的变量。执行过程:先求表达式的值,然后将值赋值给左边的变量。2 右边的表达式可以是变量、常量、函数调用等特殊的表达式。右边的表达式可以是变量、常量、函数调用等特殊的表达式。3 不要将不要将“”理解为数学上的等号:理解为数学上的等号:A=A+1 是表示将是表示将A单元的值加后以放回到单元的值加后以放回到A单元。单元。执行过程如右图执行过程如右图3.赋值符号赋值符号“=”左边一定只能是变量名或对象的属性引左边一定只能是变量名或对象的属性引用,不能是常量、符号常量、表达式。用,不能是常量、符号常量、表达式。下面的赋值语句都是错的:下面的赋值语句都是错的:5=
15、X 左边是常量。左边是常量。Abs(X)=20 左边是函数调用,即是表达式。左边是函数调用,即是表达式。5.赋值符号赋值符号“=”两边的数据类型一般要求应一致。两边的数据类型一般要求应一致。3.2 顺序结构顺序结构3.2.2 数据的输出数据的输出Print方法方法 Print方法的一般格式:方法的一般格式:对象名对象名.Print,|;说明:说明:对象名对象名.可以是窗体名、图片框名,也可是立即窗口可以是窗体名、图片框名,也可是立即窗口“Debug”。若省略对象,则表示在当前窗体上输出。若省略对象,则表示在当前窗体上输出。用用Print方法在图片框和立即窗口对象中输出与在窗体方法在图片框和立即
16、窗口对象中输出与在窗体对象中输出完全相同。对象中输出完全相同。3.2 顺序结构顺序结构3.2.3 用户交互函数和过程用户交互函数和过程 1.InputBox函数函数变量名变量名=InputBox$(,)其中其中:提示提示 提示信息提示信息,标题标题 标题区显示标题区显示,缺省缺省输入区缺省值。输入区缺省值。例如,要在屏幕上显示如下的对话框例如,要在屏幕上显示如下的对话框:3.2 顺序结构顺序结构 例如:有下列语句如下例如:有下列语句如下:Dim x%x=Val(InputBox(“请输入一个数请输入一个数”,“输入框输入框”,100)语句执行后打开如下对话框。语句执行后打开如下对话框。缺省值标
17、题提示3.2 顺序结构顺序结构2.MsgBox函数和函数和MsgBox过程过程 函数形式函数形式:变量变量%=MsgBox(提示提示,按钮按钮图标图标+缺省按钮缺省按钮+模式模式,标题,标题)过程形式过程形式:MsgBox 提示提示,按钮按钮图标图标+缺省按钮缺省按钮+模式模式,标题标题图标标题提示信息命令按钮3.2 顺序结构顺序结构说明:说明:“标题标题”和和“提示提示”与与InputBox函数中对应的参数相函数中对应的参数相同;同;“按钮图标按钮图标+缺省按钮缺省按钮+模式模式”是整型表达式,决是整型表达式,决定信息框按钮数目、出现在信息框上的图标类型及操作模式定信息框按钮数目、出现在信息
18、框上的图标类型及操作模式(见表见表3.1)若程序中需要返回值,则使用函数,否则可调用过程。若程序中需要返回值,则使用函数,否则可调用过程。3.2 顺序结构顺序结构按钮及图标值如下按钮及图标值如下:根据用户所选按钮,函数返根据用户所选按钮,函数返回回1717的整数值,其含义的整数值,其含义如下表如下表:(表(表3-2)3-2)3.2 顺序结构顺序结构3.2.4 注释语句注释语句 其语法格式为:其语法格式为:Rem 或或 说明:说明:1.指指要要包包括括的的任任何何注注释释文文本本。在在Rem关关键键字字和和注注释释内内容容之之间间要要加加一一个个空空格格。可可以以用用一一个个英英文文单单引引号号
19、“”来代替来代替Rem关键字。关键字。2.如如果果在在其其他他语语句句行行后后面面使使用用Rem关关键键字字,必必需需用用冒冒号号(:)与与语语句句隔隔开开。若若用用英英文文单单引引号号“”,则则在在其其他他语语句句行行后后面不必加冒号面不必加冒号(:)。例如:例如:Const PI=3.1415925 符号常量符号常量PIS=PI*r*r :Rem计算圆的面积计算圆的面积3.2 顺序结构顺序结构3.2.5 应用举例应用举例 例例3.3 输输入入时时间间(小小时时,分分和和秒秒),然然后后使使用用输输出出消消息息框输出总计多少秒。框输出总计多少秒。使使用用文文本本框框输输入入数数据据,使使用用
20、消消息息框框输输出出计计算算结结果果,程程序序运运行界面如图行界面如图3-14所示。所示。3.2 顺序结构顺序结构图图3-14 程序运行界面程序运行界面3.2.5 应用举例应用举例例例3.4 编编一一程程序序,求求一一内内半半径径R1=10cm,外外半半径径R2=20cm的球环的体积。要求按四舍五入保留到小数点后的球环的体积。要求按四舍五入保留到小数点后4位。位。解:球的体积公式解:球的体积公式 :本题所求的球环面的体积公式本题所求的球环面的体积公式:3.2 顺序结构顺序结构 选择结构是根据条件选择执行不同的分支语句,以完成选择结构是根据条件选择执行不同的分支语句,以完成问题的要求。在问题的要
21、求。在Visual Basic程序设计中,使用程序设计中,使用IF语句和语句和Select Case语句来处理选择结构。其特点是:根据所给定的语句来处理选择结构。其特点是:根据所给定的条件成立(条件成立(True)或不成立()或不成立(False),从各实际可能的不同),从各实际可能的不同分支中执行某一分支的相应操作(程序块),并且任何情况分支中执行某一分支的相应操作(程序块),并且任何情况下总有下总有“无论条件多寡,必择其一;虽然条件众多,仅选其无论条件多寡,必择其一;虽然条件众多,仅选其一一”的特性。的特性。3.3 选择结构选择结构3.3.1 If条件语句条件语句 1.IfThen语句语句
22、(单分支结构单分支结构)If Then 语句块语句块 End If 或或 If Then 例例:已知两个数已知两个数x和和y,比较它们的大小,比较它们的大小,使得使得x大于大于y.If xy Then t=x:x=y:y=t End If 或或 If xy Then t=x:x=y:y=t 3.3.1 If条件语句条件语句2.IfThenElse语句语句(双分支结构双分支结构)If Then Else End If If Then Else 双分支选择结构执行过程双分支选择结构执行过程 3.3.1 If条件语句条件语句例如:输出例如:输出x,y两个中值较大的一个值。两个中值较大的一个值。IF
23、XY Then Print XElse Print YEnd If也可以写成如下的单行形式:也可以写成如下的单行形式:IF XY Then Print X Else Print Y 3.3.1 If条件语句条件语句 例例3.5 设设计计一一个个求求解解一一元元二二次次方方程程的的程程序序,要要求求考考虑虑实实根、虚根等情况。根、虚根等情况。算法分析:算法分析:(1)一元二次方程根的计算公式:)一元二次方程根的计算公式:(2)求求解解首首先先要要输输入入方方程程的的系系数数a,b,c,计计算算的的值值,由由其其值值是是否大于等于零来决定是实根还是虚根。否大于等于零来决定是实根还是虚根。3.3.1
24、 If条件语句条件语句3.条件函数条件函数Iif()IIf函函数数可可用用来来执执行行简简单单的的条条件件判判断断操操作作,它它相相当当于于IFThen.Else结构。结构。IIF函数的使用格式:函数的使用格式:IIF(,)说明:说明:(1)与与IF语语句句中中的的表表达达式式相相同同,通通常常是是关关系系表表达达式式、逻逻辑辑表表达达式式,也也可可为为算算术术表表达达式式。如如果果是是算算术术表表达达式式,其值按非其值按非0为为True,0为为False进行判断。进行判断。(2)当当为为真真时时,函函数数返返回回的的值值,当当为假时,函数返回为假时,函数返回的值。的值。(3)、可以是任何表达
25、式。可以是任何表达式。例如:例如:Max=IIF(XY,X,Y)它与下面语句等价:)它与下面语句等价:IF XY Then Max=x Else Max=Y 3.3.1 If条件语句条件语句4.IfThenElseIf语句语句(多分支结构多分支结构)形式形式:If Then ElseIf Then Else 语句块语句块 n+1 End If执行过程 3.3.1 If条件语句条件语句使用使用IF语句实现的程序段如下:语句实现的程序段如下:If x=90 then Print 优秀优秀ElseIf x=80 Then Print 良好良好 ElseIf x=70 Then Print 中等中等
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 程序设计 基本 结构
限制150内