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