新编C语言程序设计教程(周学毛)第1章.ppt
第1章C语言基础第1章C语言基础第1章C语言基础1.1C语言概述1.2基本语法成份1.3C程序的结构1.4C程序的实现1.1C语言概述1.1.1C语言的产生与发展1.C语言的产生C语言于1972年~1973年间,诞生于美国的贝尔实验室,由创建。C语言的产生基于两个方面的需要。一是为满足UNIX操作系统开发的需要。UNIX操作系统是一个通用的、复杂的计算机管理系统。二是为拉近高级语言与硬件之间距离的需要。C语言集高级语言与汇编语言优点于一身。C语言面对实际应用的需要而产生,直至今日仍不改初衷。C语言的发展1960年出现的ALGOL语言是一种面向问题的高级语言,远离硬件,不适于开发系统软件。1963年,英国剑桥大学推出CPL语言,CPL语言比ALGOL语言接近硬件一些,但规模较大,难以实现。1969年,剑桥大学的M.Richards对CPL语言进行简化,推出BCPL语言(BCPL—BasicCombinedProgrammingLanguage)。1970年,贝尔实验室的K.Thompson为DEC公司PDP[CD*2]7计算机上运行的一种早期UNIX操作系统设计了一种类BCPL语言,称为B语言。B语言规模小,接近硬件,1971年在PDP-11计算机上实现,并写了UNIX操作系统。1960年~1971年是C语言的萌芽阶段。1972年~1973年间,贝尔实验室的在保留B语言优点的基础上,创建了C语言。1973年,UNIX操作系统被用C语言改写,称为UNIX第五版。最初的C语言只是一种UNIX操作系统的工作语言,依附于UNIX系统,主要在贝尔实验室内部使用。01UNIX以后的第六版、第七版、SYSTEMⅢ和SYSTEMⅤ都是在第五版的基础上发展起来的,C语言也作了多次改进。到1975年,UNIX第六版的公布,使C语言受到人们的普遍注意。02UNIX操作系统的广泛使用,促进了C语言的迅速发展与普及,C语言的发展与普及也促进了UNIX操作系统的推广。到1978年出现了独立于UNIX和PDP计算机的C语言,从而,C语言被迅速移植到大、中、小与微型机上。当年,B.W.Kernighan和以UNIX第七版的C编译程序为基础,出版了影响深远的名著《C程序设计语言》。01C++语言是C语言发展的新阶段,是一种更好的C语言,是应用广泛的面向对象的程序设计语言。02C语言的标准与方言各机构推出了自己的C语言与版本,某些执行过程的微小差别不时引起C程序之间的不兼容。美国国家标准协会(ANSI)从1983年开始,经过长达五年的努力,制定了C语言的新标准——ANSIC,现在提及C语言的标准就是指该新标准。ANSIC比原标准C有很大的发展,解决了经典定义中的二义性,给出了C语言的新特点。KR也以新标准改写了他们的经典著作。任何C程序都必须遵循ANSIC标准,本教材的主体也以ANSIC作为基础。C语言简洁、紧凑,压缩了一切不必要的成份。C语言运算丰富,将括号、赋值、强制类型转换、取变量地址等都以运算实现。C语言数据类型丰富,具有现代语言的各种数据类型;用户能扩充数据类型,能够实现各种复杂的数据结构,完成各种问题的数据描述。C语言是一种结构化程序设计语言,具有结构化语言所要求的三种基本结构。32141.1.2C语言的特点C语言允许直接访问物理地址,能进行位运算,能实现汇编语言的大部分功能,能直接对硬件进行操作。C语言是高级语言中的低级语言。C语言提供预处理机制,有利于大程序的编写和调试。C语言编译系统小,生成目标代码质量高,程序执行效率高。C语言输入/输出功能用库函数实现,编写的程序移植性好。C语言语法限制不太严格,程序设计自由度大,对程序员要求不高。字符是可以区分的最小符号,构成程序的原始基础。C语言字符集是ASCII字符集的一个子集,包括英文字母、数字及特殊字符:英文字母:a~z和A~Z数字:0~9特殊字符:空格!#%^*--+=~/\|.,:;?′″()[]{}由字符集中的字符可以构成C语言进一步的语法成份,如标识符、关键字、特殊的运算符等。1.2.1字符集1.2基本语法成份1.