C语言从入门到精通(第2版)第2章 算法.pptVIP

C语言从入门到精通(第2版)第2章 算法.ppt

  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文档。上传文档
查看更多
算法 算法的基本概念 算法的描述 算法的基本概念 算法的特性 有穷性 确定性 可行性 输入 输出 算法的优劣 衡量一个算法的好坏,通常要从以下几个方面来分析: 正确性 可读性 健壮性 时间复杂度与空间复杂度 算法的描述 自然语言 自然语言就是人们日常用的语言,这种表示方式通俗易懂,下面通过实例具体介绍。 【实例2.1】 求n!。 (1)定义3个变量i、n及mul,并为i和mul均赋初值为1。 (2)从键盘中输入一个数赋给n。 (3)将mul乘以i的结果赋给mul。 (4)i的值加1,判断i的值是否大于n,如果大于n,则执行步骤(5),否则执行步骤(3)。 (5)将mul的结果输出。 【实例2.2】 任意输入3个数,求这3个数中的最小数。 (1)定义4个变量分别为x、y、z以及min。 (2)输入大小不同的3个数分别赋给x、y、z。 (3)判断x是否小于y,如果小于,则将x的值赋给min,否则将y的值赋给min。 (4)判断min是否小于z,如果小于,则执行步骤(5),否则将z的值赋给min。 (5)将min的值输出。 流程图 流程图是一种传统的算法表示法,它用一些图框来代表各种不同性质的操作 ,用流程线来指示算法的执行方向。由于它直观形象,易于理解,所以应用 广泛,特别是在语言发展的早期阶段,只有通过流程图才能简明地表述算法。 流程图符号 1 【实例2.3】 从键盘中输入3个数分别赋给a、b、c,要求按大小顺序把它们打印出来。流程图如图所示 3种基本结构 2 Bohra和Jacopini为了提高算法的质量,经研究提出了3种基本结构,即顺序结构、选择结构和循环结构,因为任何一个算法都可由这3种基本结构组成。这3种基本结构之间可以并列,可以相互包含,但不允许交叉,不允许从一个结构直接转到另一个结构的内部去。 整个算法都是由3种基本结构组成的,所以只要规定好3种基本结构的流程图的画法,就可以画出任何算法的流程图。 顺序结构 顺序结构是简单的线性结构,在顺序结构的程序里,各操作是按照它们出现的先后顺序执行的,如图所示。 在执行完A框所指定的操作后,接着执行B框所指定的操作,这个结构里只有一个入口点A和一个出口点B。 【实例2.4】 输入两个数分别赋给变量i和j,再将这两个数分别输出。 本实例流程图可以采用顺序结构来实现,如图所示。 输入两变量的值 选择结构 选择结构也叫分支结构,如图所示。 选择结构中必须包含一个判断框。图中所代表的含义是根据给定的条件p是否成立选择执行A框或者是B框。 下图所代表的含义是根据给定的条件P进行判断,如果条件成立则执行A框,否则什么也不做。 【实例2.5】 输入一个数,判断该数是否为偶数,并给出相应提示。 本实例流程图可以采用选择结构来实现,如图所示。 循环结构 在循环结构中,反复地执行一系列操作,直到条件不成立时才终止循环。按照判断条件出现的位置,可将循环结构分为当型循环结构和直到型循环结构。 当型循环结构 当型循环是先判断条件P是否成立,如果成立,则执行A框;执行完A框后,再判断条件P是否成立,如果成立,接着再执行A框;如此反复,直到条件P不成立为止,此时不执行A框,跳出循环。 直到型循环结构 直到型循环是先执行A框,然后判断条件P是否成立,如果条件P成立则再执行A;然后判断条件P是否成立,如果成立,接着再执行A框;如此反复,直到条件P不成立,此时不执行A框,跳出循环。 【实例2.6】 求1和100之间(包括1和100)所有整数之和。 本实例流程图可以用当型循环结构来表示,如图1所示。 本实例流程图也可以用直到型循环结构来表示,如图2所示。 图1 图2 N-S流程图 N-S图是另一种算法表示法,是由美国人I.Nassi和B.Shneiderman共同提出的,其根据是:既然任何算法都是由前面介绍的3种结构组成,则各基本结构之间的流程线就是多余的,因此去掉了所有的流程线,将全部的算法写在一个矩形框内。N-S图也是算法的一种结构化描述方法,同样也有3种基本结构,下面分别进行介绍: 顺序结构的N-S流程图 1 举例: 输出变量的值 选择结构的N-S流程图 2 举例: 判断偶数

文档评论(0)

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

文档有任何问题,请私信留言,会第一时间解决。

版权声明书
用户编号:7043023136000000

1亿VIP精品文档

相关文档