谭浩强版语言第二章.ppt

  1. 1、本文档共12页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
谭浩强版语言第二章

第二章 算 法 2.1 算法的概念和特性 2.2 简单算法举例 2.3 算法的表示 2.1 算法的概念和特性 1. 算法的概念 算法:为解决问题而采取的方法和步骤,即操作步骤。 它是程序的重要组成部分。 2.2 简单算法举例 例2.1 求1×2×3×4×5,即5!。 算法1: S1:1×2→2 S2:2×3→6 S3:6×4→24 S4:24×5→120 算法2: S1:1→p S2:2→i S3:p×i→p S4:i+1→i S5:若i≤5,转到S3继续向下执行;否则,算法结束。 例2.2 判定2000–2500年中的每一年是否闰年,将结果输出。 闰年的判定条件: (1)能被4整除,但不能被100整除 (2)能被100整除,又能被400整除 例2.3 求1-1/2+1/3-1/4+…+1/99-1/100。 规律:被加数+加数→下一个被加数 每一个加项,分子均为1,分母为上一加项的分母加 1,数值符号与上一加项相反。 例2.4 判断一个大于或等于3的正整数是不是一个素数。 判断方法:将正整数N作为被除数,将2~N-1各整数轮流作 为除数。如果都不能被整除,则N为素数。 2.3 算法的表示 2.3.1 算法的组成要素 (1)操作步骤 (2)控制结构:顺序、选择和循环 2.3.2 算法的表示方法 (1)自然语言 (2)传统流程图 (3)N-S流程图 (4)伪代码 (5)计算机语言 2.3.4 求5!算法的N-S图 2.3.5 用C语言描述算法 main( ) {int p=1,i=2; while(i=5) {p=p*i; i=i+1; } printf(“%d\n”,p); } 经编译后运行,输出结果为:120 * 第二章 算法 2. 算法的特性 有穷性、确定性、有效性 有零个或多个输入 有一个或多个输出 规律:被乘数×乘数→下一个被乘数 下一个乘数加1 2.3.3 三种基本模块 1. 顺序结构 程序模块B 程序模块A 程序模块A 程序模块B 新程序模块 ( a ) ( b ) ( c ) 2. 分支结构 条件 程序模块A 成立 程序模块B 不成立 程序模块A 程序模块B 不成立 成立 条件 新程序模块 ( a ) ( b ) ( c ) 3. 循环结构 图 2.3 当型循环结构 程序模块 新程序模块 ( b ) ( c ) ( a ) 当条件成立时执行 程序模块 条件 成立 不成立 图 2.4 直到型循环结构 新程序模块 ( b ) ( c ) ( a ) 直到条件不成立时为止 程序模块 程序模块 成立 不成立 条件 1→p 2→i p×i→p i+1→i 直到i>5为止 输出p值 1→p 2→i p×i→p i+1→i 当i≤5 输出p值 (a) 直到型循环 (b) 当型循环 * 第二章 算法

文档评论(0)

ligennv1314 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档