资源描述:
《C语言讲义(1-5)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、本文由zqh——2008贡献doc文档可能在WAP端浏览体验不佳。建议您优先选择TXT,或下载源文件到本机查看。第1章C语言基础1.1C语言概述1.1.1C语言的产生与发展语言的产生1.C语言的产生C语言于1972年~1973年间,诞生于美国的贝尔实验室,由Denis.M.Ritchie创建.C语言的产生基于两个方面的需要.一是为满足UNIX操作系统开发的需要.二是为拉近高级语言与硬件之间距离的需要.C语言集高级语言与汇编语言优点于一身.2.C语言的发展1972年~1973年间,贝尔实验室的D.
2、M.Ritchie在保留B语言优点的基础上,创建了C语言.1973年,UNIX操作系统被用C语言改写,称为UNIX第五版.UNIX以后的第六版,第七版,SYSTEMⅢ和SYSTEMⅤ都是在第五版的基础上发展起来的.这期间C语言也被多次改进.1975年,UNIX的第六版公布,C语言开始受到人们的普遍关注.UNIX操作系统的广泛使用,促进了C语言的迅速发展与普及,C语言的发展与普及反过来又促进了UNIX操作系统的推广.1978年,出现了独立于UNIX和PDP计算机的C语言,从此C语言被迅速移植到大,
3、中,小型与微型机上.当年,B.W.Kernighan和D.M.Ritchie以UNIX第七版的C编译程序为基础,出版了影响深远的名著《TheCProgrammingLanguage》.C++语言是C语言发展的新阶段,是一种更好的C语言,是应用广泛的面向对象的程序设计语言.目前,C语言已经发展成为迄今为止最流行的计算机程序设计语言.3.C语言的标准与方言C语言的广泛应用还是在不同的开发团体之间出现了问题,各机构推出了自己的C语言版本,某些执行过程的微小差别却不时引起C程序之间的不兼容.美国国家标准
4、协会(ANSI)从1983年开始经过长达五年的努力,制定了C语言的新标准——ANSIC.现在提及C语言的标准都是指新标准.ANSIC比原标准C有很大的发展,解决了经典定义中的二义性,给出了C语言的新特点.Kernighan和Ritchie也以新标准改写了他们的经典著作.任何C程序都必须遵循ANSIC标准,本教材的主体也以ANSIC作为基础.1.1.2C语言的特点(1)C语言简洁,紧凑,压缩了一切不必要的成份.(2)C语言运算丰富,将括号,赋值,强制类型转换,取变量地址等都以运算实现.(3)C语言
5、数据类型丰富,具有现代语言的各种数据类型;用户能扩充数据类型,能够实现各种复杂的数据结构,完成各种问题的数据描述.(4)C语言是一种结构化程序设计语言,具有结构化语言所要求的三种基本结构.(5)C语言是高级语言中的低级语言.C语言允许直接访问物理地址,能进行位运算,能实现汇编语言的大部分功能,能直接对硬件进行操作.(6)C语言提供编译预处理机制,有利于大程序的编写和调试.(7)C语言编译系统小,生成的目标代码质量高,程序的执行效率高.(8)C语言的输入和输出功能用库函数实现,编写的程序移植性好.
6、(9)C语言语法限制不太严格,程序设计自由度大,对程序员要求较高.1.2基本语法成份1.2.1字符集字符是可以区分的最小符号,构成程序的原始基础.C语言字符集是ASCII字符集的一个子集,包括英文字母,数字及特殊字符:英文字母:a~z和A~Z数字:0~9特殊字符:空格!#%[]{}由字符集中的字符可以构成C语言进一步的语法成份,如标识符,关键字,特殊的运算符等.^&*--+=~<>/
7、.,:;?′〃()1.2.2标识符标识符在程序中用来标识各种程序成份,命名程序中的一些实体,如变量,常量,函数
8、,类型,标号等对象的名字.C语言规定,标识符必须以英文字母或下划线开头,是字母,数字,下划线的序列.以下是合法的标识符:i,j,k,x,c,a1,a2,op,y_1,zhou_prg,radius,cout,sun,day以下是不合法的标识符:a.1,1computer,x+y,!abc,99999,$100,π,3cC语言中的标识符严格区分字母的大小写,标识符abc与标识符ABC是不同的标识符.习惯上,符号常量用大写字母表示,变量名称用小写字母表示.prime,program,sort,max
9、,min,prg_1,标准C中,标识符的长度可以任意,一般有效长度为8个字符,TurboC中标识符最大长度为32个字符.标识符取名时不能与关键字同名,也不要与系统预先定义的标准标识符(如标准函数)同名.系统使用的一些内部标识符往往以下划线开头,为避免与系统使用的内部标识符发生冲突,用户定义的标识符一般也不要用下划线开头.标识符的名称一般选用相应的英文单词或拼音形式缩写,尽量不要使用简单代数符号,a,c,如b,x,y,z等.最好能"见名知义",以提高程序的可读性.标识符大多数采用"匈牙利"表示法,