第3章_控制语句第3章 算法设计的基本方法
教学目的:
通过本章的学****使学生掌握算法的基本知识,了解关系运算与逻辑运算
,学会使用选择结构和循环型结构进行程序设计。
知识点:
、特点及描述
(关系运算与逻辑运算)
重点:
2.关系运算符和关系表达式
3.逻辑运算符和逻辑表达式
4.条件运算符及条件表达式
5.IF语句的格式使用
难点:复杂条件的表示;IF语句的正确使用。
程序是计算机的灵魂
算法是程序的灵魂
一个程序应包括两个方面的内容:
著名计算机科学家沃思提出一个公式:
数据结构 + 算法 = 程序
对数据的描述:数据结构(data structure)
对操作的描述:算法(algorithm)
完整的程序设计应该是:
数据结构+算法+程序设计方法+语言工具
算法的组成要素和基本性质
算法的概念
解决问题的一种方法或过程的描述,(是对特定问题求解步骤的一种描述。)一个问题可能有多种算法对应。
或算法是由一系列操作组成的。
(2)算法的组成要素
操作:与问题和所用的工具有关。
控制结构:每一个算法都要由一系列的操作组成。同一操作序列,按不同的顺序执行,就会得出不同的结果。控制结构即如何控制组成算法的各操作的执行顺序。
控制结构:
◆顺序控制结构:语句是按照书写顺序执行的,也就是语句的执
行顺序与书写顺序一致。只有这种结构不可能处理复杂问题。
选择控制结构:当程序执行到某一条语句时,要进行某种判断,从两支或多分支选择其中一条执行。
循环控制结构:将一条或多条语句重复执行若干次。
有了选择和循环控制结构,就可以设计复杂大型的程序了。
(3)算法的性质
①效性:算法所规定的操作都应能有效执行的。
②定性:描述的操作应当具有明确的含义;序列中只有一个初始动作,每一动作仅有一个后继动作;序列终止表示问题得到解答或问题没有解答,不能没有任何结论。
③穷性:所规定的操作序列必须在允许的时间内结束。
④输入
⑤输出
1) 流程图
方法:用一些图框表示各种类型的操作,用线表示这些操作的执行顺序。
过程
判断
数据
预定义过程
起止
流程线
连接
注释
举例:用流程图描述从3个数据中取最大数的算法。
a>=b
输入a,b,c
max=a
真
假
max=b
max>=c
真
假
输出max
输出c
开始
结束
i<=3
输入一个n
假
真
假
输出max
开始
结束
max=0,i=1
真
i++
n>=max
max=n
2) N-S图
方法:每一种基本结构都是一个矩形框,整个算法可以像堆积木一样堆成。
S1
S2
S3
P
S1
S2
当P
S
假
真
(c)当型重复结构
(a)顺序结构
(b)选择结构
举例:用N-S图描述从3个数据中取最大数的算法。
算法1(使用选择结构)
a>=b
max=a
max=b
输入a,b,c
假
真
max>=c
输出max
输出c
真
假
算法2(使用循环结构)
当i<=3
i++
n>=max
max=n
真
假
输入n
初始化:max=0,i=1
输出max
3) 伪代码
举例:用伪代码描述从3个数据中取最大数的算法。
算法1(使用选择结构)
输入a,b,c;
if(a>=b)
max=a;
else
max=b
if(max>=c)
输出max;
else
输出c;
算法2(使用循环结构)
初始化:max=-32768,i=1;
当(i<=3)
(
输入n;
i++;
if(n>=max)
max=n;
)
输出max;
由三种基本结构顺序组成的算法结构,可以解决任何复杂的问题。由基本结构所构成的算法属于“结构化”的算法,它不存在无规律的转向,只在本基本结构内才允许存在分支和向前或向后的跳转。
一个结构化程序 就是用高级语言表示的结构化算法。用三种基本结构组成的程序必然是结构化的程序,这种程序便于编写、便于阅读、便于修改和维护。
结构化程序设计强调程序设计风
第3章 控制语句 来自淘豆网www.taodocs.com转载请标明出处.