- 1、本文档共45页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第2章程序设计的灵魂——算法剖析
* 将例2.3判定闰年的算法用N-S图表示 * 2.4.3 用伪代码表示算法 概念:伪代码是用介于自然语言和计算机语言之间的文字和符号来描述算法。 特点:它如同一篇文章一样 ,自上而下地写下来。每一行(或几行)表示一个基本操作。它不用图形符号,因此书写方便 、格式紧凑,也比较好懂,也便于向计算机语言算法(即程序)过渡。 用处:适用于设计过程中需要反复修改时的流程描述。 2.4 计算机算法的表示 * IF x is positive THEN print x ELSE print -x 也可以用汉字伪代码表示: 若 x为正 打印 x 否则 打印 -x 也可以中英文混用,如: IF x 为正 print x ELSE print -x 例: “打印x的绝对值”的算法可以用伪代码表示为: 2.4 计算机算法的表示 * 开始 置t的初值为1 置i的初值为2 当i=5,执行下面操作: 使t=t×i 使i=i+1 {循环体到此结束} 输出t的值 结束 也可以写成以下形式: BEGIN{算法开始} 1?t 2 ? i while i≤5 {t×i ?t i+1 ? i} print t END{算法结束} 例求5!。用伪代码表示算法: 2.4 计算机算法的表示 * 2.4 计算机算法的表示 2.4.4 用计算机语言表示算法 概念:用计算机实现算法。计算机是无法识别流程图的。只有用计算机语言编写的程序才能被计算机执行。因此在用流程图描述出一个算法后,还要将它转换成计算机语言程序。 程序设计语言 特点:用计算机语言表示算法必须严格遵循所用的语言的语法规则。 提供了一种表达数据与处理数据的功能 程序的执行过程实际上是对程序所表达的数据进行处理的过程。 * 9种控制语句: if( )~else~ for( )~ while( )~ do~while( ) continue break switch goto return 数 据 类 型 基本类型 构造类型 指针类型 空类型void 自定义类型typedef 数值类型 字符类型char 枚举类型enum 整 型 浮点型 单精度型float 双精度型double 短整型short 长整型long 整型int 数组 结构体struct 共用体union 34种运算符: 算术运算符:+ - * / % ++ -- 关系运算符: = == = != 逻辑运算符:! || 位运算符 : ~ | ^ 赋值运算符:= 及其扩展 条件运算符:?: 逗号运算符:, 指针运算符:* 求字节数 :sizeof 强制类型转换:(类型) 分量运算符:. - 下标运算符:[] 其它 :( ) - 32个关键字:(由系统定义,不能重作其它定义) auto break case char const continue default do double else enum extern float for goto if int long register return short signed sizeof static struct switch typedef unsigned union void volatile while 2.4 计算机算法的表示 * 2.4 计算机算法的表示 例 将例2.1表示的算法(求5!) 用C语言表示。 #include stdio.h void main( ) { int i,t; t=1; i=2; do { t=t*i; i=i+1; } while (i=5) printf(″%d\n″,t); } 变量定义 循环结构 输出语句 应当强调说明:写出了C程序,仍然只是描述了算法,并未实现算法。只有运行程序才是实现算法。应该说,用计算机语言表示的算法是计算机能够执行的算法。
文档评论(0)