C语言 第2章程序设计基础知识

上传人:zw****58 文档编号:35830348 上传时间:2018-03-21 格式:PPT 页数:18 大小:168.50KB
返回 下载 相关 举报
C语言 第2章程序设计基础知识_第1页
第1页 / 共18页
C语言 第2章程序设计基础知识_第2页
第2页 / 共18页
C语言 第2章程序设计基础知识_第3页
第3页 / 共18页
C语言 第2章程序设计基础知识_第4页
第4页 / 共18页
C语言 第2章程序设计基础知识_第5页
第5页 / 共18页
点击查看更多>>
资源描述

《C语言 第2章程序设计基础知识》由会员分享,可在线阅读,更多相关《C语言 第2章程序设计基础知识(18页珍藏版)》请在金锄头文库上搜索。

1、教学内容: 2.1 算法与程序 2.2 结构化程序设计 2.3 结构化程序算法描述 2.4 面向对象设计简介 教学要求: 1. 掌握算法的基本概念,算法的描述方法。 2. 掌握程序流程图、N_S图的描述方法。 3. 掌握结构化程序设计的方法。,第2章 程序设计基础知识,2.1 算 法 与 程 序,存储程序和程序控制是现代数字电子计算机自动工作的基本原理。 著名计算机科学家沃思(Nikiklaus Wirth)对程序的描述,提出一个公式: 程 序 = 数据结构 + 算法 一、计算机解题过程 1分析问题 2. 确定处理方案(设计方案) 3. 确定计算机的操作步骤 4. 编写程序 5. 调试和运行程

2、序 6. 整理资料文档,二、 算 法 所谓算法,通俗地讲就是一种解题方法,所要采取的确定的有限的解题步骤。计算机解题的算法,严格地讲是由若干条指令组成的有穷序列。 例如,求出两个整数的和的算法描述如下: (1)定义3个变量,并给3个变量分别分配内存空间,用于存放整数值; (2)给 2个变量,分别赋给26、16两个整数; (3)求出两个整数和的数值,赋给第三个变量; (4)输出第三个变量的值 (5)运行结束。,三、算法的特性(5个规则)(1)算法的有穷性。算法中执行步骤在执行有穷步后结束,是有限的,每一条指令执行次数都是有限的。(2)算法的可行性。算法中操作步骤都是通过已经实现的基本操作指令执行

3、有限次完成,每条指令的执行时间都是有限的,保证了整个算法的实现。(3)输入,一个算法有0个或多个输入的外界量 。(4)输出,一个算法有一个或多个输出的量,它们是与输入有某种关系的量。(5)算法的确定性。算法中的每一个操作的含义必须明确,无二义性。一定条件下执行路径也是唯一的。,四、 算法分析(4条原则) 算法分析的4条原则: (1)一个算法必须是正确的,符合计算机所要求解的题目,能得到预期的结果。 (2)求解一个问题,执行算法所需要化费的时间。 (3)求解一个问题,执行算法所需要占用的存储空 间。 (4)编制的算法要求条理清晰、易于理解、易于编码、易于调试。,五、程 序 程序是由计算机语言的语

4、句序列组成的文件 。 程序应包括对处理对象的描述和对处理规则的描述。 处理对象是数据或信息,处理规则是指动作和步骤,即计算机解题的算法。 六、 程序与算法的区别 (1)算法可以采用自然语言、伪代码、流程图,N-S图,PAD图来进行描述。程序只能用计算机语言来编写。 (2)程序中的指令必须是可以执行的,而算法中的指令描述无此限制。 (3)算法必须满足有穷性,程序不一定满足有穷性。,一、 什么是程序设计 用计算机语言把解题步骤编写成计算机可执行的指令序列的过程,称为程序设计。计算机程序设计技术是设计、程序编制和调试程序的方法和过程。 二、 什么是结构化程序设计 结构化程序应满足3个条件: (1)程

5、序只有一个入口和一个出口; (2)程序中不应该存在永远不执行的语句; (3)不应该产生死循环,无休止运行程序。,2.2 结构化程序设计,三、程序设计分类 按照程序设计风格来分类,可以分为以下3种: (1)逻辑式程序设计。 (2)函数式程序设计。 (3)对象式程序设计。 按照结构性质来分类,程序设计分为以下2种: (1)非结构化程序设计。在20世纪5060年代,程序设计的初级阶段,程序的编写可以不受约束。 (2)结构化程序设计。程序设计中强调数据结构、强调程序的模块化,采用单入口单出口的控制结构的程序设计方法。,四、结构化程序的3种基本结构 1. 顺序结构 顺序结构中的各个模块是按照它们出现的先

6、后顺序执行的。 2. 选择结构 选择结构先判断选择条件,根据判断的逻辑值,确定执行其中的某一个模块。 3. 循环结构 循环结构先判断循环条件,满足条件重复执行循环体包含的执行块,直到循环条件不满足,终止循环。,五、结构化程序设计方法 (1)结构化程序设计的基础是由Bohun Jacopini 证明的数学定理:任何程序逻辑都可用顺序结构、选择结构、循环结构3种基本结构来表示。 这3种基本控制结构的共同特点是一个入口和一个出口。 (2)结构化程序设计强调程序结构的规范化 因而结构化程序的结构清晰,易于编制和维护。 (3)结构化程序设计的核心是分层结构和模块结构。,一、 程序流程图 程序流程图是用规

7、定的图形、指向线和文字说明来表示算法的一种图形。程序流程图的基本符号: (1)椭圆形图形:终端框表示算法的开始与结束 (2)矩型图形:处理框表示算法的各种处理功能 (3)菱形图形: 判断框表示算法的条件转移操作 (4)平形四边形:表示算法的输入/输出操作 (5)预定义图形:预定义框表示算法调用的子算法 (6)圆点图形:引入引出连接符表示流程图的延续 (7)指向线:指向线指引流程图中的方向,2.3 结构化程序算法描述,二、程序流程图的基本结构,图2.1 顺序结构流程图,图2.2 单分支结构流程图,图2.3 双分支结构流程图,图2.4 当循环结构流程图,图2.5 至到循环结构流程图,二、程序流程图

8、的基本结构(续),三、N-S图 N-S图用层层嵌套的方框图形来描述程序算法,避免了流程图中出现的流程线,有效控制了无条件转移,体现了结构化描述方法。,四、 N-S图的基本结构框图,条件P T F A B,图2.6 双分支结构流程图,条件P T F A,图2.7 单分支结构流程图,五、PAD图 PAD是英文词组 Problem Analysis Diagram 的缩写。用PAD图描述程序算法的特点是自上而下和自左向右展开描述。,当条件P为真 A,A 直到条件P为真,图2.8 当循环结构流程图,图2.5 直到循环结构流程图,面向对象的程序设计方法引进了类、对象、属性、方法、事件等许多新的概念。面向

9、对象的程序设计通过把类、对象、属性、方法、事件作为最基本的构件来构造问题的模型。 1. 属性(Property) 属性用来表示对象的状态,即对象所具有的性质和特点。 2事件(Event) 事件是一种预先定义好的特定动作,可以被系统或用户激活。用户可以编写相应的代码对此动作进行响应。,2.4 面向对象设计简介,3. 方法(Method) 对象能够执行的一个操作称为方法,方法也称为方法程序,即类中所定义的服务。 4.类(Class) 类是一组对象的属性和行为特征的抽象描述。类是具有共同属性、共同操作性质的对象的集合。 类就象是一个模板,对象都是由类生成的,类定义了对象所有的属性、事件和方法,从而决定了对象的属性和它的行为。 类具有继承性、封装性和多态性等特性。,同 学 们 再 见,程 序 设 计 基 础,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 教育学

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号