《C语言程序设计教程》全面介绍C语言的概念、特性和结构化程序设计方法。第一章介绍C语言概述,第二章介绍C语言程序设计基础,第三章介绍顺序结构程序设计,第四章介绍选择结构程序设计,第五章介绍选择结构程序设计,第六章介绍数组,第七章介绍函数,第八章介绍指针,第九章介绍结构体、共用体与自定义类型,第十章介绍位运算,第十一章介绍文件。
本书语言组织简明易懂,书中列举了大量的程序实例,并对内容和例题都做了精心的挑选,既突出阐明了原理和方法,又保证了有一定的实用性,同时有一定的广度和深度,在例题的编排上由浅入深、逐层递进。内容紧扣基础、面向应用,循序渐进地引导学生学习程序设计的思想和方法。
本书每一章都通过大量程序案例,在编程实践中讲解知识点,实现做中学的教育理念。同时,又给出一定数量的练习题,以此训练和培养学生设计程序的能力。
本书不仅让学生学习程序设计的基本概念和方法,掌握编程的技术,更重要的是培养学生针对生产实际分析问题和解决问题的能力,培养学生的创新能力。
C语言是广泛使用的程序设计语言之一。C语言既具有高级语言的特点,又能直接面向硬件,同时具有丰富灵活的处理能力,这使得它既可以编写系统程序,又可以编写应用程序,深受程序设计者喜爱。目前,很多高校都选用C语言作为程序设计的首选语言。
本书共分11章。
第1章C语言概述,介绍程序及算法的概念、C语言的发展历程和特点、C语言的程序结构以及C语言程序的开发环境。
第2章C语言程序设计基础,介绍C语言数据的表现形式、C语言的数据类型、C语言的运算符和表达式、数据类型转换及位运算。
第3章顺序结构程序设计,介绍C语言的基本语句、字符数据的输入输出、格式输入输出及顺序结构程序举例。
第4章选择结构程序设计,介绍关系运算符与关系表达式、逻辑运算符与逻辑表达式、条件运算符与条件表达式、if语句的三种形式、switch语句及选择结构程序设计举例。
第5章循环结构程序设计,介绍while循环、do……while循环、for循环三种形式的循环结构,循环结构中常用的break语句和continue语句,循环的嵌套及循环结构程序举例。
第6章数组,介绍一维数组的定义、引用、初始化及举例,二维数组的定义、引用、初始化及举例,字符数组与字符串。
第7章函数,介绍函数概述、函数定义、函数调用、数组作为函数的参数、函数的嵌套调用与递归调用、变量的作用域与存储方式。
第8章指针,介绍指针的概念、指针变量、指针与数组、指针与字符串、指向函数的指针、返回指针的函数及指针数组。
第9章结构体、共用体与自定义类型,介绍结构体的概念、结构体数组、指向结构体类型数据的指针、共用体及用typedef定义数据类型。
第10章编译预处理,介绍带参数与不带参数的宏定义、文件包含及条件编译。
第11章文件,介绍文件的分类、缓冲区及文件类型的指针,文件的常用操作,包括文件的打开与关闭、文件的读写、文件的定位以及文件的其他操作。
本书语言组织简明易懂,书中列举了大量的程序实例,并对内容和例题都做了精心的挑选,既突出阐明了原理和方法,又保证了有一定的实用性,同时有一定的广度和深度,在例题的编排上由浅入深、逐层递进。内容紧扣基础、面向应用,循序渐进地引导学生学习程序设计的思想和方法。
本书每一章都通过大量程序案例,在编程实践中讲解知识点,实现做中学的教育理念。同时,又给出一定数量的练习题,以此训练和培养学生设计程序的能力。
本书不仅让学生学习程序设计的基本概念和方法,掌握编程的技术,更重要的是培养学生针对生产实际分析问题和解决问题的能力,培养学生的创新能力。
本书的作者在多年C语言教学、研究和实践积累的基础上,吸收国内外C语言程序设计课程的教学理念和方法,依据C语言程序设计课程教学大纲的要求编写而成。全书在武昌理工学院信息工程学院的指导下,由阳小兰负责统稿,第4、5、6、9、10章及附录由阳小兰编写,第1、2、3、7章由吴亮编写,第8章由钱程编写,第11章由彭玉华编写,朱福喜教授对全书进行了审查。
本书在编写过程中得到了武昌理工学院信息工程学院的领导与同仁们的大力支持,也得到了华中科技大学出版社的大力支持,在此表示衷心感谢。在编写的过程中,我们力求做到严谨细致、精益求精,但由于时间仓促和编者水平有限,书中疏漏和不妥之处在所难免,敬请各位读者和同行专家批评指正。
编者
2016年3月于武昌理工学院
阳小兰,是武昌理工学院教师,从教经验丰富,深受学生好评。
第1章C语言概述1
1.1微型计算机系统1
1.2程序设计语言5
1.3C语言的程序结构8
1.4C语言程序的开发环境11
本章小结17
习题118
第2章C语言程序设计基础20
2.1数据的表现形式20
2.2C语言的数据类型25
2.3C语言运算符与表达式33
2.4数据类型转换37
2.5位运算38
本章小结43
习题243
第3章顺序结构程序设计48
3.1C语言的基本语句48
3.2字符数据的输入输出49
3.3格式输入输出52
3.4顺序结构程序举例60
本章小结64
习题364
第4章选择结构程序设计68
4.1关系运算符与关系表达式68
4.2逻辑运算符与逻辑表达式69
4.3条件运算符与条件表达式72
4.4if语句73
4.5switch语句78
4.6程序举例80
本章小结83
习题483
第5章循环结构程序设计89
5.1while循环89
5.2do…while循环92
5.3for循环94
5.4break语句和continue语句96
5.5循环的嵌套98
5.6循环程序举例101
本章小结105
习题5105
第6章数组112
6.1一维数组112
6.2二维数组120
6.3字符数组与字符串125
本章小结135
习题6135
第7章函数140
7.1函数概述140
7.2函数定义145
7.3函数调用147
7.4数组作为函数的参数154
7.5函数的嵌套调用158
7.6函数的递归调用160
7.7变量的作用域与存储方式167
本章小结171
习题7171
第8章指针176
8.1指针的概念176
8.2指针变量177
8.3指针与数组181
8.4指针与字符串190
8.5指向函数的指针193
8.6返回指针的函数195
8.7指针数组197
本章小结199
习题8200
第9章结构体、共用体与自定义类型203
9.1结构体的概念203
9.2结构体数组208
9.3指向结构体类型数据的指针213
9.4共用体217
9.5用typedef定义数据类型221
9.6程序设计举例223
本章小结227
习题9227
第10章编译预处理231
10.1宏定义231
10.2文件包含235
10.3条件编译238
本章小结240
习题10240
第11章文件245
11.1文件的概述245
11.2文件的常用操作247
本章小结258
习题11258
附录261
附录A常用字符与ASCII代码对照表261
附录BC语言中的关键字及含义262
附录CC语言运算符的优先级和结合性263
附录DC语言常用的库函数264
参考文献271