c语言第02章算法

上传人:zw****58 文档编号:56833573 上传时间:2018-10-16 格式:PPT 页数:15 大小:307KB
返回 下载 相关 举报
c语言第02章算法_第1页
第1页 / 共15页
c语言第02章算法_第2页
第2页 / 共15页
c语言第02章算法_第3页
第3页 / 共15页
c语言第02章算法_第4页
第4页 / 共15页
c语言第02章算法_第5页
第5页 / 共15页
点击查看更多>>
资源描述

《c语言第02章算法》由会员分享,可在线阅读,更多相关《c语言第02章算法(15页珍藏版)》请在金锄头文库上搜索。

1、第二章 算 法,一、教学内容 1 算法的概念与简单实例 2 算法的特性 3 算法的描述 4 结构化程序设计方法介绍 二、教学重点与难点1 算法的概念及算法的描述算法的流程图表示法;2 编写实际问题的算法 三、教学方法与课时数方法:讲授法课时数:4节,四、 教学过程 (一) 算法的概念与简单实例 1 算法的概念 一个程序应包括两方面内容: 对数据的描述:即数据结构(数据类型,组织形式) 对操作的描述,即操作步骤。 计算机科学家WIRTH提出:程序=数据结构+算法 详细描述:程序=数据结构+算法+程序设计方法+语言工具和环境 算法:是对特定问题求解步骤的一种描述,它是指令的有限序列,其中每一条指令

2、表示一个或多个操作。 计算机算法分为两大类别:数值算法和非数值算法 2 简单算法举例 例1:求1X2X3X4X5的积 算法:S1:令P=1S2:令i=2S3:使PXi,积仍放在变量P中,即PX i=PS4:使i的值加1,即i+1=IS5:如果i的值不大于5,返回重新执行步骤S3以及S4,S5,否则,算法结束,得到计算结果。,例2:有50个学生,要求将成绩在80分以上者打印出来,用n 表示学生的学号,n1代表第一个学生的学号,ni代表第i个学生学号,g代表学生成绩,gi代表第i个学生成绩,算法:S1:1=iS2:如果gi 80,打印ni和gi ,否则不打印S3:i+1=iS4:如果i50,返回S

3、2,继续执行,否则算法结束。 例3,例4,例5见教材P16-17(二) 算法的特性 一个算法有以下特点:1 有穷性:仅有有限的操作步骤2 确定性:算法的每一个步骤应当是确定的, 即无“二义性”。 3 有零个或多个输入4 有一个可多外输出5 有效性:算法中的每一个步骤都应当有效执行,(三)算法描述 常用的描述方法有:自然语言,流程图,伪代码,PAD图等 1、用自然语言表示算法用人们日常使用的语言(汉语,英语,日语等)来描述一个问题的求解过程,对人而言易理解,但不易写成计算机执行的程序。 2、用流程图表示算法流程图是用一些图框表示各种操作。用图形表示算法直观形象,易于理解。常用的图框有: 起止框:

4、 输入输出框:判断框:处理框:流程线:连接点: 注释框:-,【例2.3】判定2000 2500年中的每一年是否闰年,将结果输出。 润年的条件: 能被4整除,但不能被100整除的年份; 能被100整除,又能被400整除的年份; 设y为被检测的年份,则算法可表示如下: S1: 2000y S2:若y不能被4整除,则输出y“不是闰年”,然后转到S6 S3:若y能被4整除,不能被100整除,则输出y“是闰年”,然后转到S6 S4:若y能被100整除,又能被400整除,输出y“是闰年” 否则输出y“不是闰年”,然后转到S6 S5:输出y“不是闰年”。 S6:y+1y S7:当y2500时, 返回S2继续

5、执行,否则,结束。,三种基本结构和改进的流程图,三种基本结构的共同特点: 1.只有一个入口; 2.只有一个出口; 3. 结构内的每一部分都有机会被执行到; 4. 结构内不存在“死循环”。,顺序结构:,2.选择结构:,3.循环结构,用伪代码表示算法 伪代码使用介于自然语言和计算机语言之间的文字和符号来描述算法。,用计算机语言表示算法我们的任务是用计算机解题,就是用计算机实现算法;用计算机语言表示算法必须严格遵循所用语言的语法规则。,(四)结构化程序设计方法1971年,Wirth基于其开发程序设计语言和编程的实践经验,首次提出了“结构化程序计”(structured programming)的概念

6、。这个概念的要点是:不要求一步就编制成可执行的程序,而是分若干步进行,逐步求精。第一步编出的程序抽象度最高,第二步编出的程序抽象度有所降低最后一步编出的程序即为可执行的程序。用这种方法编程,似乎复杂,实际上优点很多,可使程序易读、易写、易调试、易维护、易保证其正确性及验证其正确性。结构化程序设计方法又称为“自顶向下”或“逐步求精”法,在程序设计领域引发了一场革命,成为程序开发的一个标准方法,尤其是在后来发展起来的软件工程中获得广泛应用。有人评价说沃思的结构化程序设计概念“完全改变了人们对程序设计的思维方式”,这是一点也不夸张的。,结构化程序设计的基本思想是:任何程序都可以用三种基本结构的组合来实现。这三种基本结构是:顺序结构、选择结构和循环结构。这三种结构都具有一个入口和一个出口。结构化程序设计方法的四条原则是:1. 自顶向下;2. 逐步求精;3.模块化;4.限制使用goto语句。 “自顶向下”是说,程序设计时,应先考虑总体,后考虑细节;先考虑全局目标,后考虑局部目标; “逐步求精”是说,对复杂问题,应设计一些子目标,作过渡,逐步细节化;“模块化”是说,一个复杂问题,肯定是由若干稍简单的问题构成;解决这个复杂问题的程序,也应对应若干稍简单的问题,分解成若干稍小的部分。,

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


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

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