C语言_谭浩强版_第二章.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C语言_谭浩强版_第二章

主要内容 2.1 算法的概念 2.1 算法的概念 2. 2简单算法举例 2. 2简单算法举例 2. 2简单算法举例 2. 2简单算法举例 2. 2简单算法举例 2. 2简单算法举例 2. 3算法特性 2. 4怎样表示一个算法 2. 4怎样表示一个算法 (3)伪代码表示 伪代码是指介于自然语言和计算机语言之间的一种代码,用文字和符号来描述算法,是帮助程序员制定算法的智能化语言,它不能在计算机上运行,但是使用起来比较灵活,无固定格式和规范,只要写出来自己或别人能看懂即可,由于它不用图形符号,书写方便,又与计算机语言比较接近,因此可以比较容易地转换为计算机程序。但是伪代码表示算法不如流程图直观,可能会出现逻辑上的错误 三种基本结构 三种基本结构 三种基本结构 三种基本结构的共同特点 2.4 用N-S流程图表示算法 2.4 用N-S流程图表示算法 2.5 结构化程序设计方法 2.5 结构化程序设计方法 2.5 结构化程序设计方法 作 业 * Northeastern University at Qinhuangdao 第二章 程序的灵魂—算法 东北大学秦皇岛分校 2.1 算法的概念 2.2 简单算法举例 2. 3算法的特性 2. 4怎样表示一个算法 2. 5结构化程序设计方法 算法----为解决一个问题而采取的方法和步骤 计算机算法分为两大类: 数值运算算法——各种数值运算都有比较 成熟的 算法可供选用(数学程序库) 非数值运算算法——事务管理领域,例如图书检 索、人事管理、行车调度管理等 例2.1 求 算法1:最原始的方法 步骤1:计算1*2,得到2; 步骤2:把步骤1得到的结果再乘以3得到6; ……. 步骤4:把步骤3得到的24再乘以5,得到120。 例2.1 求 算法2: S1:令p=1;i=2; S2:p*i值给p; S3:i的值加1,即i+1的值给i; S4:如果i不大于5,返回步骤2以及步骤3。 算法该怎样给出? 例2.3 判定2000——2500年中的每一年是否是闰年,将结果输出。 闰年的条件: (1)能被4整除,但不能被100整除的年份; (2)能被100整除,又能被400整除的年份 y不能被4整除,非闰年 y能被4整除,但不能被100整除,闰年 y能被100整除,又能被400整除,闰年 其他,非闰年 S1:2000 y; S2:若y不能被4整除,则输出“y不是闰年”。然后转到S6; S3:若y能被4整除,不能被100整除,则输出y是闰年,然后转到S6; S4:若y能被100整除,又能被400整除,输出y 是闰年,然后到S6; S5: 输出y不是闰年; S6: y+1 y; S7:当y不大于2500时,转到S2继续执行,否则算法停止 算法的特点: (1)有穷性——有限的操作步骤 有穷性——在合理的范围之内 (2)确定性——无歧义性(两种或多种的可能含义) (3)有零个或多个输入 (4)有一个或多个输出 (5)有效性——算法中的每一个步骤应当能有效地执行,并得到确定的结果。 b=0, a/b (1)自然语言表示法 可使用汉语、英语和数学符号等(如,求三角形面积),比较符合人们的思维习惯,通俗易懂 但描述文字显得冗长,不易直接转化为程序 由于自然语言表示的含义往往不太严格,有时引起理解上的歧义性 例如:“张先生对李先生说他的孩子考上了大学” 自然语言表示一般适用于算法较简单的情况 (2)传统流程图表示法 流程图是一个描述程序的控制流程和指令执行情况的有向图示,美国国家标准化协会(ANSI)规定了一些常用的符号作为的流程图符号,已为世界各国程序设计工作者普遍采用 (2)传统流程图表示法 例2.6 计算5!, 流程图如下 例2.6 计算5!, 流程图如下 缺点是所占篇幅较大,尤其当算法 比较复杂时,画流程图既费时又不方便 由于允许使用流程线,使用者可使流程任意转移,不利于结构化程序的设计 (4)用计算机语言表示算法 实现算法的方式可能不止一种,我们的任务是用计算机实现算法。因此,在用流程图或伪码描述出算法后,还要将它转换成计算机语言程序 用计算机语言表示算法必须严格遵循所用语言的语法规则(这与伪代码不同),实现算法的计算机语言可是各种计算机语言 (1)顺序结构 (2)选择结构 (3)

文档评论(0)

xy88118 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档