C语言程序设计 教学课件 ppt 作者 路俊维 马雪松主编 第1章 C语言概述

上传人:E**** 文档编号:89423191 上传时间:2019-05-25 格式:PPT 页数:50 大小:650.50KB
返回 下载 相关 举报
C语言程序设计 教学课件 ppt 作者 路俊维 马雪松主编 第1章 C语言概述 _第1页
第1页 / 共50页
C语言程序设计 教学课件 ppt 作者 路俊维 马雪松主编 第1章 C语言概述 _第2页
第2页 / 共50页
C语言程序设计 教学课件 ppt 作者 路俊维 马雪松主编 第1章 C语言概述 _第3页
第3页 / 共50页
C语言程序设计 教学课件 ppt 作者 路俊维 马雪松主编 第1章 C语言概述 _第4页
第4页 / 共50页
C语言程序设计 教学课件 ppt 作者 路俊维 马雪松主编 第1章 C语言概述 _第5页
第5页 / 共50页
点击查看更多>>
资源描述

《C语言程序设计 教学课件 ppt 作者 路俊维 马雪松主编 第1章 C语言概述 》由会员分享,可在线阅读,更多相关《C语言程序设计 教学课件 ppt 作者 路俊维 马雪松主编 第1章 C语言概述 (50页珍藏版)》请在金锄头文库上搜索。

1、任 务,在Vc+6.0开发环境中创建、运行C源程序,任务目的,C语言是计算机编程的最重要的入门语言之一,VC+6.0是一个非常好的C语言IDE(集成开发环境)。通过使用VC+6.0对该任务的实现,可使学生熟练掌握C语言程序框架结构、VC+6.0集成开发环境,熟练编辑、调试和编译C程序。,任务所需相关知识,C程序的结构 C程序的执行过程 C程序的上机步骤 编译预处理,1.1 C语言的产生和发展,C语言是目前流行的一种高级语言,它既可作为系统软件的描述语言,也可用来开发应用软件。 语言是在70年代初问世的。一九七八年由美国电话电报公司(AT&T)贝尔实验室正式发表了语言。同时由B.W.Kernig

2、han和D.M.Ritchit合著了著名的“THE C PROGRAMMING LANGUAGE”一书。通常简称为K&R,也有人称之为K&R标准。但是,在K&R中并没有定义一个完整的标准C 语言,后来由美国国家标准协会(American National Standards Institute)在此基础上制定了一个C 语言标准,于一九八三年发表,通常称之为ANSI C。,1.2 C语言的特点,C是中级语言。它把高级语言的基本结构和语句与低级语言的实用性结合起来。 C是结构式语言。结构式语言的显著特点是代码及数据的分隔化,即程序的各个部分除了必要的信息交流外彼此独立。这种结构化方式可使程序层次清

3、晰,便于使用、维护以及调试。 C语言功能齐全。C语言具有各种各样的数据类型,并引入了指针概念,可使程序效率更高。 C语言适用范围广。C语言还有一个突出的优点就是适合于多种操作系统,如DOS、UNIX,也适用于多种机型。,1.3 C语言程序的结构,用C语言编写的源程序,简称C程序。C程序是一种函数结构,一般由一个或若干个函数组成(所谓“函数”,是具有小功能的程序片断。具体内容将在单元七介绍),其中必有一个名为main()的函数,程序的执行就是从main()函数开始的。,为了说明语言源程序结构的特点,先看以下几个程序。这几个程序由简到难,表现了语言源程序在组成结构上的特点。虽然有关内容还未介绍,但

4、可从这些例子中了解到组成一个C源程序的基本部分和书写格式。,【例1.1】在屏幕上输出一行文本信息“*欢迎光临*”。,程序举例,例1.1 程序代码,#include “stdio.h” void main() /*主函数*/ printf(“*欢迎光临*n”); /*在屏幕上输出“*欢迎光临*” */ ,例1.1 运行结果,说明,(1)程序的功能是在在屏幕上输出“*欢迎光临*”。 (2)include称为文件包含命令,扩展名为.h的文件称为头文件。 (3)main()为主函数名。每个C程序都必须有一个main()函数,且只能有一个主函数(main函数)。它是C程序执行的入口地址。 (4)“ ”是

5、函数的界定符,位于 中的内容为函数体,每个函数都必须用一对 将函数体括起来。 (5)printf()输出语句是系统提供的库函数。 (6)每个语句后面有一个分号“;”。 (7)位于“/*/”之间的内容是注释语句。,程序举例,【例1.2】计算两个整数的平均值,并输出结果。,例1.2 程序代码,#include void main() int x,y; /*变量定义*/ float ave; x=46; /*为变量x赋值*/ y=78; /*为变量y赋值*/ ave=(x+y)/2.0; /*计算平均值存放在ave变量中*/ printf(“平均值是%0.1f”,ave); /*在屏幕上输出平均值*

6、/ ,例1.2 运行结果,说明,(1)#include是编译预处理命令,放在源程序的最前面,编译预处理语句后面不加分号。 (2)程序中变量在使用前要定义,定义变量的语句放在可执行语句之前。 (3)printf()是系统提供的函数,在将“平均值是%0.1f”输出时,“%0.1f”由ave的值取代。 (4)C程序中除了可用库函数外还可使用程序员自行编写的用户函数。 (5)C程序的书写格式自由,一行可以写一条或几条语句,一条语句也可以写在多行上。C程序没有行号,每条语句和变量定义必须用一个分号结尾。,1.4 算 法,1.4.1 程序与算法 程序通常指为了让计算机完成特定任务而设计的有序指令的集合。一

7、个程序应包括:对数据的描述。在程序中要指定数据的类型和数据的组织形式,即数据结构(data structure)。 对操作的描述。即操作步骤,也就是算法(algorithm)。 Nikiklaus Wirth提出的公式:算法+数据结构=程序 解决一个问题的方法和步骤,就称为算法。,1.4.2 算法的特性,有穷性:一个算法应包含有限的操作步骤而不能是无限的。 确定性:算法中每一个步骤应当是确定的,而不能应当是含糊的、模棱两可的。 有零个或多个输入。 有一个或多个输出。 有效性:算法中每一个步骤应当能有效地执行,并得到确定的结果。,1.4.3 算法的表示,算法的表示方法很多,常见的有自然语言、传统

8、流程图、N-S图,伪代码等。 1用自然语言表示算法 自然语言就是人们日常使用的语言。自然语言表示的算法通俗易懂,但篇幅较长,表达上容易引起理解方面的“歧义性”。所以除了很简单的问题,一般不用自然语言表示算法。 2传统流程图表示算法 传统流程图是用一组规定的图形符号、流程线和文字说明来表示各种操作、方法。它直观形象,易于理解。ANSI规定了一些常用流程图符号,如下表1-1所示。,表1-1 流程图基本形状图,3用N-S流程图表示算法 针对传统流程图存在的问题,1973年美国学者提出了一种新型流程图:N-S流程图。其主要特点是完全取消了流程线,不允许随意出现控制流,全部算法写作矩形框内,该矩形框以3

9、种基本结构(顺序、选择、循环)描述符号为基础复合而成。,顺序结构 选择结构 循环机构,4伪代码描述算法 伪代码是一种介于自然语言和程序设计语言之间的文字和符号,用来描述算法。伪代码的表现形式比较灵活,没有严格的语法格式。,1.5 程序设计的步骤,程序设计就是针对给定问题进行设计、编写和调试计算机程序的过程。因此程序设计者必须先要充分了解问题才能编写出合适的应用程序。,程序设计的一般步骤,(1)分析问题 首先根据问题的具体要求进行需求分析、对现有的信息加以整理,然后在分析的基础上,将实际问题抽象化,建立相应的数学模型并确定解决方案。 (2)设计算法 根据建立的数学模型和确定的方案,详细规划解决问

10、题的步骤。若是简单问题,绘制流程图既可,如是比较复杂的问题则采用伪代码或其他算法描述。 (3)编写程序 根据确定的算法,选用合适的程序设计语言,将算法按所选语言的规则描述出来,即形成源程序。但编写程序时尽量以模块与对象方式来编写;同时切记在程序中加上必要的注释。因为一个较复杂的程序若没有注释,不但别人看不懂,时间长了自己也可能忘了当初为何这么写。 (4)调试运行与维护程序 对编写好的程序需进行验证、测试(Testing)、调试(Debugging)与维护(Maintainance)。各种条件下的数据都要输入,不论条件成立与否都要执行,以便证实程序正确无误。若发现问题即对程序进行修改,然后再运行

11、和检验,直到得出正确结果。,1.6 C语言源程序的上机步骤,前面已经看到了一些用C语言编写的程序,但它们是不能直接运行的。因为计算机只能识别和执行由0和1组成的二进制指令,而不能识别和执行用高级语言写的程序。为了使计算机能执行高级语言所写的程序,必须先用一种称为“编译程序”的软件,把程序翻译成二进制形式的“目标程序”,然后将该目标程序与系统的函数库和其他目标程序连接起来,形成可执行的目标程序才能被机器所执行。,1.6.1 C语言源程序的执行过程,1编辑 完成代码的基本输入和编辑工作,该过程的使用方法和普通文件编辑软件的用法相同。 2编译与调试 完成程序的语法和逻辑错误的检查与修改。该过程是一个

12、反复的过程,即先通过语法检查,如果发现错误,则返回到编辑过程进行修改,修改完成后,在进行预防检查,直到没有语法错误为止。逻辑错误只有到连接过程和运行过程才能发现。 3连接 将目标程序与系统文件进行连接,以生成可执行程序。如果在这个过程出现错误,返回编辑状态进行修改,然后重复上面的步骤,直到没有错误为止。 4运行 让计算机运行我们所编写的程序,如果运行的结果和我们期望的不一样,就需返回到开始进行检查、修改,重复上面的过程,直到运行出正确的结果为止。,1.6.2 Visual C+6.0开发环境,Visual C+6.0是Microsoft公司出品的基于Windows的C/C+开发工具,它是Mic

13、rosoft Visual Studio套装软件的一个有机组成部分。,1.6.3 使用Visual C+ 6.0,本节主要介绍使用Visual C+6.0集成开发环境来编写C语言程序。 1启动Visual C+ 6.0 在Windows环境下,在“开始”-“程序”菜单中双击Visual C+6.0图标,就启动了Visual C+6.0,显示了Visual C+6.0用户界面如图1-8所示,用户界面常称作Visual C+6.0集成开发环境(简称IDE)。,IDE(集成开发环境界面),Visual c+6.0界面,2任务工作区 VC+在任务工作区窗口显示于任务有关的信息,这些信息存放在以dsw为

14、后缀的任务文件中,每个程序都有一个任务文件,它是自动生成的,并且可以人工修改。 任务工作区窗口的下面有三个图标,类视图ClassView、资源视图ResourceView和文件视图FileView。,3正文工作区 用户可以在正文工作区编辑、修改源程序文件。 编辑完程序后,单击File菜单下的Save选项,或按Ctrl+S键,就可以把编辑好的程序保存到硬盘上。 4输出窗口 输出窗口显示编译的提示信息,帮助检查程序中的语法错误 。 5菜单 Visual C+6.0的主界面有9项菜单,单击菜单标签就可以激活菜单。,1.7 预处理命令,预处理是指在进行编译的第一遍扫描(词法扫描和语法分析)之前所作的工

15、作。预处理是语言的一个重要功能,它由预处理程序负责完成。当对一个源文件进行编译时,系统将自动引用预处理程序对源程序中的预处理部分作处理,处理完毕自动进入对源程序的编译。 语言提供了多种预处理功能,如宏定义、文件包含、条件编译等。,1.7.1 宏定义,在语言源程序中允许用一个标识符来表示一个字符串,称为“宏”。被定义为“宏”的标识符称为“宏名”。在编译预处理时,对程序中所有出现的“宏名”,都用宏定义中的字符串去代换,这称为“宏代换”或“宏展开”。 宏定义是由源程序中的宏定义命令完成的。宏代换是由预处理程序自动完成的。 在语言中,“宏”分为有参数和无参数两种。下面分别讨论这两种“宏”的定义和调用。

16、,1无参宏定义 无参宏的宏名后不带参数。 其定义的一般形式为: #define 标识符 字符串 其中的“#”表示这是一条预处理命令。凡是以“#”开头的均为预处理命令。“define”为宏定义命令。“标识符”为所定义的宏名。“标识符”可以是常数、表达式、格式串等。,例如: #define M (y*y+3*y) 它的作用是指定标识符M来代替表达式(y*y+3*y)。在编写源程序时,所有的(y*y+3*y)都可由M代替,而对源程序作编译时,将先由预处理程序进行宏代换,即用(y*y+3*y)表达式去置换所有的宏名M,然后再进行编译。,对于宏定义还要说明以下几点: (1)宏定义是用宏名来表示一个字符串,在宏展开时又以该字符串取代宏名,这只是一种简单的代换,字符串中可以含任何字符,可以是常数,也可以是表达式,预处理程序对它不作任何检查。如有错误,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号