主编 姚大鹏
中国水利水电出版社
第1章 C语言概述
1.1 C语言发展概述
C语言是比较流行的高级程序设计语言之一。它不但具有一般高级语言的特点,又可以像汇编语言一样,对硬件内存的位、字节直接进行操作,其运行效率非常高。
C语言的发展与操作系统UNIX密不可分,它是在B语言的基础上发展起来的,其根源可以追溯到ALGOL60。
1960年出现的ALGOL60是一种面向过程的高级语言,它离硬件比较远,不适合用来编写系统程序。
1963年剑桥大学推出了CPL(Combined Programming Language)语言,CPL语言在ALGOL60的基础上更接近硬件一些,但规模比较大。1967年剑桥大学的Matin Richards对CPL语言做了简化,推出了BCPL(Basic Combined Programming)语言。
1970年,UNIX开发者——美国贝尔实验室的Ken Thompson以BCPL语言为基础,设计出更为简单的而且非常接近硬件的B语言,并用B语言编写了UNIX操作系统和绝大多数上层应用程序。
1972年,贝尔实验室的D.M.Ritchie在B语言的基础上又设计出了C语言。后来,C语言又多次做了改进,到1977年出现了不依赖于具体机器的C语言编译文本《可移植C语言编译程序》,使C移植到其他机器时所需要的工作大大简化了。到了20世纪80年代,C开始进入其他操作系统,并很快在各类大、中、小和微型计算机上得到了广泛的使用。从而成为当代最优秀的程序设计语言之一。
1983年,美国国家标准化协会(ANSI)根据C语言问世以来各种版本对C的发展和扩充,制定了新的标准,称为ANSI C。ANSI C比原来的标准C有了很大的发展。1988年K&R修改了他们的经典著作The C programming language,按照ANSI C标准又重写了该书。1987年,ANSI再次公布了新的标准——87ANSI C。目前比较流行的C编译系统都是以它为基础。
随着面向对象编程技术的出现,在进一步扩充和完善了C语言基础上,又出现了C++。Java、C++等面向对象语言(第四代语言)是C语言的发展。
1.2 C语言的特点
相对于其他高级语言,C语言有很多优点,概括起来,其主要特点如下:
语言简洁紧凑,使用方便灵活,运算符丰富 ;
表达能力强;
数据结构丰富,具有现代化语言的各种数据结构;
C语言是一种结构化程序设计语言;
可对硬件直接进行操作;
生成目标代码质量高,程序执行效率高;
可移植性好(与汇编语言相比);
第1章 C语言概述
第1章 C语言概述
1.3 C语言基本语法概述
1.3.1 C语言的语法特点
C程序是由函数构成的,其中必须有且只有一个主函数;
函数体是由左右花括号{ }括起来的;
一个C程序总是从main函数开始执行的;
C语言中的每个基本语句都以“ ;”结束;
C语言书写格式自由,一行可以写一个语句,也可以写多个语句;
C语言本身没有输入、输出语句。输入和输出操作都是由库函数scanf和printf等函数来完成的;
用/*…*/可以对C程序中的任何部分作注释。
第1章 C语言概述
1.3.2 标识符、常量和变量
标识符:由英文字母、数字、下划线组成,且第一个字符必须是字母或下划线。另外大小写字母的含义不同;还有不能够使用C语言中的关键字做标识符。
常量:在程序运行过程中其值不能被改变的量。
变量:在程序的执行过程中其值可以被改变的量。
注意:使用变量前,一定要先定义后使用。
第1章 C语言概述
1.3.3 数据类型
整型数据
整型常量:
十进制整数:以数码直接开头的常量;
八进制整数:以0开头的常量,如011;
十六进制整数:以0x开头的常量,如0x123;
整型变量 :如下表
整型数据类型
关键字
所占位数
所占字节
数的表示范围
基本型
int
16
2
-215~215-1
短整型
short int
16
2
-215~215-1
长整型
long int
32
4
-231~231-1
无符号整型
unsigned int
16
2