- 1、本文档共46页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第一章C语言概述﹒算法介绍
第一章 C概述、算法描述 主要内容 C语言概述 算法 (一)C语言概述 内容 C语言出现的历史背景 C语言的特点 简单的C程序介绍 运行C程序的步骤 历史背景 C语言出现的历史背景 C语言是国际上广泛流行的计算机高级语言,既可用来写系统软件,也可用来写应用软件。 C语言是在B语言的基础上发展起来的,它的根源可以追溯到ALGOL 60。 特点 C语言特点 语言简洁、紧凑,使用方便、灵活。 运算符丰富。 数据结构丰富,具有现代化语言的各种数据结构。 具有结构化的控制语句。 语法限制不太严格,程序设计自由度大。 语言能进行位(bit)操作,能实现汇编语言的大部分功能,可以直接对硬件进行操作。 生成目标代码质量高,程序执行效率高。 用C语言编写的程序可移植性好(与汇编语言比)。 C语言在编程语言中的位置 有人把C称为“高级语言中的低级语言” 或“中级语言”,意为兼有高级和低级语言的特点。按此观点可将各语言分类如下: 高级: BASIC,FORTRAN,COBOL,PASCAL,Ada,Modula-2; 中级: C,FORTH,宏汇编; 低级: 汇编语言 一般仍习惯将C语言称为高级语言,因为C程序也要通过编译、链接才能得到可执行的目标程序,这是和其他高级语言相同的。 程序示例 C程序 (例1.2) 例 1.2 求两数和 #include stdio.h int main() { int a; int b; int sum; a = 123; b = 456; sum = a+b; printf (sum is %d/n, sum); return 1; } C程序(例1.3) 例1.3 求两个数中的较大者 #include stdio.h int max(int x,int y); // 前向声明 int main ( )/* 主函数*/ { int a, b, c; /*声明部分,定义变量*/ scanf (%d,%d,a,b); /*输入变量a和b的值*/ c = max (a,b);/*调用max函数,将得到的值赋给c*/ printf (max=%d,c); /*输出c的值*/ return 1; } C程序介绍(例1.3续1) // 定义max函数,函数值为整型, 形式参数x,y为整型 int max(int x,int y) { int z; if (x y) { z=x; } else { z=y; } return z; } C程序(例1.3续2) max()函数的另两种写法: 一种: int max(int x,int y) { return x = y ? x : y; } 另一种:用宏实现 #define MAX(x, y) (x) = (y) ? (x) : (y) 运行C程序步骤 预备知识 程序:一组计算机能识别和执行的指令。 源程序:用高级语言编写的程序。 计算机只能识别和执行由0和1组成的二进制指令,而不能识别和执行用高级语言写的指令。 编译:为了使计算机能执行高级语言源程序,必须先用一种称为“编译程序”的软件,把源程序翻译成二进制形式的“目标程序”。 链接:把目标程序与系统的函数库以及其他目标程序链接起来,形成可执行程序。 运行C程序流程图 (二)算法 总述 程序包含以下两方面: 数据 数据的类型和数据的组织形式,即数据结构。 操作 即操作步骤,也就是算法。 它们的关系: 数据是操作的对象,操作的目的是对数据进行加工处理,以得到期望的结果。 数据结构 + 算法 = 程序 总述 程序除了上述两个要素之外,还包括程序设计方法和计算机语言。 因此,一个程序员应具备如下知识: 算法 数据结构 程序设计方法 语言 内容 算法的概念 算法举例 算法特性 算法表示方法 结构化的程序设计方法 算法的概念 算法的概念 为解决一个问题而采取的方法和步骤,就称为算法。 生活中同样存在算法:吃饭、上学、跳舞 …… 算法分类: 数值运算算法 非数值运算算法:常见的是用于事务管理。 算法举例 例2.1 问题描述:求1*2*3*4*5。 方法一:用最原始的方法进行: 步骤1:先求1*2,得到结果2。 步骤2:将步骤2得到的结果再乘以3,得到结 果6。 步骤3:将6乘以4,得到24。 步骤4:将24乘以5,得到120。 例2.1(方法二) 设两个变量分别代表被乘数和乘数,不另外设变量存放结果,而直接将每一步的乘积放在被乘数变量中。 p:被
文档评论(0)