文档详情

C语言程序设计精典的教程class1.ppt

发布:2017-05-04约1.28万字共45页下载文档
文本预览下载声明
4. 翻译方式 编译程序或解释程序对高级语言程序(或汇编语言程序)进行“翻译”处理,使它成为机器指令程序,才能提交计算机执行。 其核心是将高级语言(或汇编语言)转换成“机器指令程序”。下面分别介绍这两种处理方式。 (1)解释方式 使用解释程序(Interpreter)将高级语言程序的语句逐条“翻译”成机器指令并逐条提交计算机执行,直至程序结束(如图1-5所示) 。 (2)编译方式 所谓编译方式是分两步进行的首先通过编译程序(Compiler)对整个高级语言程序进行编译,它包括翻译和查错(词法分析、语法和语义分析、生成和优化目标程序)。出现错误时,停止编译,报告错误,不生成目标程序,待修改源程序后,再进行编译,直到最终得到正确的目标程序。然后使用链接程序(Linker)对目标程序进行链接,得到可执行的程序,这时才能将可执行程序提交计算机执行(如图1-6所示) Turbo c 是以编译方式进行工作的。 1.2算法及其表示 ?1.2.1算法的概念和特点 我们在使用计算机解决实际问题的时候,通常按如下步骤进行: 1. 分析问题,找出解决问题的模型。 2. 根据模型,设计出适合计算机特点的处理方法即算法。 3. 选择适合的计算机语言,进行编程以实现算法。 4. 上机编辑、调试、运行所编制的程序,得到结果。 5. 对结果进行分析,整理出文字材料即文档。 一个合理的算法具有以下特点: 1. 有穷性:一个算法应该是“有限”个步骤的,而不能是“无限“个步骤的。也就是说经过有限个步骤的处理以后,算法应该结束。 2. 确定性:算法中的每一个步骤的含义都是确定的、唯一的,不能具有其他的含义或可被理解成其他的含义。 3. 有输入:可有零个或多个输入。输入是用来在一个算法的执行过程中,向它提供处理对象(数据)或控制算法执行过程的信息的。 4. 有输出:可有一个或多个输出。它是算法执行的结果的输出。没有输出的算法是一个无效的算法。 5. 有效性:算法的每一步骤都可有效地执行。 1.2.2如何表示一个算法 表示一个算法的方法很多,如自然语言法、传统流程图法、N-S流程图法、伪代码法等,理论上都可用来表示算法,但是效率上有很大差异。 例如:M=5!,要求M 的值。 自然语言法描述算法如下: ①设定变量M,M置初值为1,设定变量I,置初值为1。 ②如果I的值小于6,则执行③,否则执行④。 ③将M乘以I并置于M中存放,将I中的值加1并置于I中存放,再执行②。 ④将M中的值输出。 用传统流程图法描述算法如图1-7所示: 用N-S流程图描述算法如图1-8所示: 结构化程序设计 人们经过长期的实践,不断地总结经验,提出了结构化程序设计方法,将算法的描述归纳为三种基本结构的顺序组合,即顺序结构、选择结构、循环结构。 它们的共同特点是:只有一个入口,只有一个出口,每个基本结构中的每一部分都有机会被执行,结构内部不存在死循环。 使用三种基本结构描述的算法是结构化的算法,按照结构化算法编写出来的程序具有良好的可读性和可维护性。 需要说明的是传统流程图使用几何图形、流程线、文字说明(见表1-1)来描述一个算法, 美国学者I.Nassi和B.Shneidermen提出了用N-S流程图又称盒图(三种基本结构对照表见表1-2)描述算法的方法。 1.3 C语言基本知识 1.3.1 C语言的发展历史及特点 1. C语言程序结构紧凑、语言简洁。 2. C语言的数据类型丰富。 3. C语言的运算符丰富,有多达44种运算符,(见附录III)。 4. C语言是一种结构化程序设计语言。 5. C语言是处于汇编语言和高级语言之间的程序设计语言,即中级语言。 6. C语言可移植性好 7. C语言的语法限制不太严格。 1.3.2 C语言的标识符与关键字 在C语言程序中,标识符和关键字都属于程序的基本语法单位。正确地使用标识符和关键字对于程序的编制是至关重要的。 1. 标识符 标识符一般是指用户或系统定义的符号名、变量名、数组名、类型名、函数名、文件名等。C语言规定标识符由字母、数字、下划线组成,必须以字母或下划线开头。大写字母小写字母被认为是不同的字符,在标识符中不能含有其它字符,也不能跨行书写。例如, 合法的标识符如下: a_1 name _x123 worker World_1
显示全部
相似文档