C语言程序设计:理论与实践
作者 : 孙浩 主编 刘亮 副主编 王宁 张莉萍 参编
出版日期 : 2012-01-12
ISBN : 978-7-111-36959-2
定价 : 35.00元
教辅资源下载
扩展信息
语种 : 简体中文
页数 : 297
开本 : 16
原书名 :
原出版社:
属性分类: 教材
包含CD :
绝版 :
图书简介

书以程序设计为主线,以编程应用为驱动,全面地介绍了C语言程序设计的基础知识和基本编程技能。本书分为理论教学篇和实践教学篇两部分,可以作为高等学校相关课程的教材,也可以作为计算机等级考试的辅导用书,还可以作为相关研究人员的参考书。

图书特色

C语言程序设计
理论与实践
孙浩 主编
刘亮 副主编 
王宁 张莉萍 参编

C语言是应用非常广泛的结构化程序设计语言之一,功能丰富、表达能力强、使用灵活方便、目标程序效率高,既具有高级语言的特性,又具有直接操纵计算机硬件的能力,因此特别适用于编写系统软件。
本书是作者根据多年的教学经验编写而成的,以程序设计为主线,以编程应用为驱动,重点介绍程序设计的基本思想和基本方法,以培养读者的实践编程能力和语言应用能力。

本书特点
在介绍基础语法知识的同时,阐述基本的编程技巧和注意事项,注重基础语法知识的实际应用。
突出显示的板块结构总结了C语言的一些重要特征,并对一些编程技能和注意事项进行了归纳,便于读者参考学习。
每部分知识点后都有相应的随堂练习,每章后都设置了相应的习题,方便读者检测自己的学习水平,加深对基础理论知识的理解。
为方便教学,为教师提供了丰富的教学资源,包括电子课件、源程序以及习题参考答案,需要的教师可以从华章网站(www.hzbook.com)下载。

图书前言

C语言是广泛使用的程序设计语言之一,其功能丰富、表达能力强、使用灵活方便、应用面广、目标程序效率高,既具有高级语言的特性,又具有直接操纵计算机硬件的能力,因此特别适用于编写系统软件。目前,C语言被许多高校列为程序设计课程的首选语言。
  C语言程序设计是一门实践性很强的课程,学生在学习的时候只通过理论学习是学不好的,必须通过大量的编程训练,在实践中掌握基础知识,培养程序设计的基本能力,并逐步理解、掌握程序设计的思想和方法。因此,C语言程序设计课程的重点应该是在学生掌握基本理论知识的基础上,培养学生的实践编程能力。
  目前,介绍C语言的教材很多,但在多年的教学实践中,我们发现其中大部分教材只注重C语言本身语法知识的阐述,而忽略了培养学生的实践编程能力。这样,尽管学生记住了一大堆语法知识,却写不出像样的程序,不利于培养学生的程序设计能力和语言应用能力。
  我们编写本书的目的是让学生在加强基础理论知识学习的基础上,提升实际编写程序的能力。为实现这个目标,我们采用了如下策略:
在介绍基础语法知识的同时,阐述基本的编程技巧和注意事项,注重基础语法知识的实际应用。
   对于用文字语言难以阐述的内容,采用图表来阐述,使得相应的知识点更加清晰、直观,便于学生加强印象。
   突出显示的板块结构总结了C语言的一些重要特征,并对一些编程技能和注意事项进行了归纳,便于学生参考学习。
   每部分知识点后都有相应的随堂练习,每章后都设置了相应的习题,方便学生检测自己的学习水平,加深对基础理论知识的理解。
  全书以程序设计为主线,以编程应用为驱动,重点介绍程序设计的基本思想和基本方法。本书分为理论教学篇和实践教学篇两部分,其中理论教学篇分为13章,第1~5章侧重于介绍C语言的基础知识和基本编程技能,主要包括C语言的基本特点,基本数据类型和指针,数据处理中的各种表达式以及顺序、分支、循环3种基本的流程控制语句。第6~11章侧重于指针和数组、函数、编译预处理、文件、结构体和共用体、位运算等知识的综合运用,采用结构化程序设计的思想来实现复杂问题的编程和基本的算法。第12章侧重于阐述指针的高级应用,对存储空间的分配和释放问题以及基本的链表应用都做了详细的介绍。第13章介绍良好的C语言程序设计风格以及常见的错误调试等。实践教学篇以训练学生的实际编写程序能力为目的,设置了10个实验和1个课程设计。此外,在附录五里面对常见的算法进行了汇总。
  在教材的组织和编写风格上,注重以下几个方面:
  1)提出问题。通过应用场景的引入和分析,使学生对C语言中各种语言成分的重要作用有一个比较清楚的认识。
  2)分析问题。提供关键的算法说明,明确指明数据获取部分、加工处理部分和结果展现部分的实现方法。
  3)解决问题。注重对于样本程序的分析和理解,源程序要点部分有注释说明。
  4)理解编程语言。对于新引入的语言成分给出详细的说明,并通过一些知识点小结使学生加深理解。
  5)拓展应用。通过程序功能的不断变化(例题以及随堂练习),使学生开拓思路,更好地理解算法和程序语言。
  6)阶段小结。归纳本章重点,并提出深入学习的指导建议。
  为方便教学,我们为使用该书的教师提供了丰富的教学资源,包括电子课件、源程序以及习题参考答案等,需要的教师可以从华章网站(www.hzbook.com)下载。
  本书的作者全部来自重庆邮电大学和重庆邮电大学移通学院从事C语言教学工作的一线老师,有着丰富的教学经验。其中第1、2、3、4、5、9、10、11、13章由孙浩编写,第6、7、8、12章由刘亮编写,实验一到实验七和附录由王宁编写,实验八到实验十和课程设计由张莉萍编写。全书由孙浩进行统稿审阅。感谢闫会峰老师、向碧群老师和武汉商业服务学院的汪婷老师为本书所做的贡献,感谢东北大学的张锡哲博士、哈尔滨工程大学的吕天阳博士和吉林大学的王上博士对我们工作的支持。
  由于作者水平有限,书中难免存在谬误之处,敬请读者指正。谢谢!作者的联系方式:sunhao2001@163.com。

孙  浩
2011年12月

上架指导

计算机\程序设计

封底文字

C语言是应用非常广泛的程序设计语言之一,功能丰富、表达能力强、使用灵活方便、目标程序效率高,既具有高级语言的特性,又具有直接操纵计算机硬件的能力,因此特别适用于编写系统软件。
本书是作者根据多年的教学经验编写而成的,以程序设计为主线,以编程应用为驱动,重点介绍程序设计的基本思想和基本方法,以便于培养读者的实践编程能力和语言应用能力。
本书特点
● 在介绍基础语法知识的同时,阐述基本的编程技巧和注意事项,注重基础语法知识的实际应用。
● 突出显示的板块结构总结了C语言的一些重要特征,并对一些编程技能和注意事项进行了归纳,便于读者参考学习。
● 每部分知识点后都有相应的课堂练习,每章后都设置了相应的习题,方便读者检测自己的学习水平,加深对基础理论知识的理解。
● 为方便教学,为教师提供了丰富的教学资源,包括电子课件、源程序以及习题参考答案,需要的教师可以从华章网站(www.hzbook.com)下载。

图书目录

前言
教学建议
第一部分  理论教学篇
第1章  C语言概览 1
1.1  C语言的生命力 1
1.1.1  C语言的发展历程和趋势 1
1.1.2  C语言的特点 2
1.2  开发第一个C程序 2
1.2.1  编写第一个C程序 2
1.2.2  运行C程序的方法 5
1.3  小结 8
1.4  习题 8
第2章  C数据揭秘 9
2.1  计算机中数据的表示 9
2.1.1  位、字节和字 9
2.1.2  数据的机内表示 9
2.2  基本语法要素 10
2.2.1  基本符号 10
2.2.2  关键字 10
2.2.3  标识符 11
2.2.4  数据类型 11
2.3  恒定不变—C常量数据 12
2.3.1  整型常量 12
2.3.2  浮点型常量 13
2.3.3  字符型常量 13
2.3.4  转义字符 13
2.3.5  字符串常量 15
2.3.6  符号常量 15
2.4  再探C常用数据类型—使用变量 16
2.4.1  整型变量 16
2.4.2  浮点型变量 19
2.4.3  字符型变量 20
2.4.4  变量初始化 21
2.4.5  各种类型数据之间的转换和混合运算 22
2.4.6  数据类型的大小—sizeof运算符 24
2.5  小结 25
2.6  习题 25
第3章  数据的输入和输出 26
3.1  putchar和getchar函数 26
3.1.1  putchar函数 26
3.1.2  getchar函数 27
3.2  puts和gets函数 27
3.2.1  puts函数 27
3.2.2  gets函数 28
3.3  格式输入与输出 29
3.3.1  printf函数 29
3.3.2  scanf函数 32
3.4  小结 35
3.5  习题 35
第4章  C语言流程控制 37
4.1  程序流程图 37
4.2  顺序结构程序设计 38
4.2.1  算术运算符 39
4.2.2  算术表达式 39
4.2.3  赋值运算符与赋值表达式 40
4.2.4  C语言语句概述 41
4.2.5  顺序结构程序举例 42
4.3  选择结构程序设计 42
4.3.1  关系运算符和关系表达式 43
4.3.2  逻辑运算符和逻辑表达式 44
4.3.3  if语句与switch语句 46
4.3.4  选择结构程序举例 52
4.4  循环结构程序设计 56
4.4.1  从while语句学自增、自减运算符 56
4.4.2  do…while语句 59
4.4.3  灵活强大的循环语句—for语句 60
4.4.4  逗号运算符和逗号表达式 62
4.4.5  break语句和continue语句 63
4.4.6  循环的嵌套 65
4.4.7  循环结构程序举例 66
4.5  小结 70
4.6  习题 71
第5章  初识指针 73
5.1  地址与指针 73
5.2  指针变量 74
5.2.1  指针变量的定义 75
5.2.2  取地址运算符与指针运算符 75
5.2.3  指针变量的引用 76
5.2.4  指针的简单运算 78
5.3  指针和动态存储管理 78
5.3.1  malloc函数和free函数 78
5.3.2  动态存储管理的应用 79
5.4  小结 80
5.5  习题 80
第6章  数组与指针 82
6.1  一维数组 82
6.1.1  一维数组的定义、引用与初始化 82
6.1.2  一维数组与指针 86
6.2  字符数组与字符串 89
6.2.1  字符数组 89
6.2.2  字符串与字符指针 90
6.2.3  字符串函数的应用 93
6.3  指针的运算与比较 94
6.3.1  指针的算术运算 95
6.3.2  指针比较 96
6.3.3  数组名与指针 96
6.4  多维数组 97
6.4.1  二维数组 97
6.4.2  指针数组 104
6.5  小结 105
6.6  习题 106
第7章  函数与模块化程序设计 108
7.1  函数概述 108
7.1.1  函数的定义 108
7.1.2  形式参数和实际参数 110
7.2  函数的调用 113
7.2.1  函数调用的形式 113
7.2.2  值传递 115
7.3  嵌套与递归 116
7.3.1  函数的嵌套调用 116
7.3.2  函数的递归 117
7.4  函数、数组与指针 119
7.4.1  数组作为函数参数 119
7.4.2  指针作为函数参数 122
7.4.3  指针与函数调用 124
7.5  变量的作用域和存储类别 127
7.5.1  局部变量和全局变量 127
7.5.2  变量的存储类别 129
7.5.3  变量的作用域与生存期 135
7.6  内部函数与外部函数 136
7.6.1  内部函数 136
7.6.2  外部函数 136
7.7  模块化程序设计概述 137
7.7.1  模块化程序设计思想 137
7.7.2  模块化程序设计原则 137
7.7.3  模块化程序设计步骤 138
7.8  小结 138
7.9  习题 138
第8章  编译预处理 142
8.1  宏定义 142
8.1.1  无参宏定义 142
8.1.2  带参宏定义 144
8.2  文件包含 146
8.3  条件编译 147
8.4  小结 149
8.5  习题 149
第9章  结构体、共用体与枚举 151
9.1  结构体—复合数据类型 151
9.1.1  结构体变量 152
9.1.2  结构体变量的引用和初始化 154
9.1.3  结构体数组 155
9.1.4  结构体指针 157
9.1.5  结构体应用—链表操作 160
9.1.6  用typedef进行类型定义 162
9.2  共用体 163
9.2.1  共用体的概念 163
9.2.2  共用体变量的引用 163
9.3  枚举类型介绍 165
9.4  小结 167
9.5  习题 167
第10章  文件操作 169
10.1  文件概述 169
10.2  文件类型指针 170
10.3  文件的打开与关闭 170
10.3.1  文件的打开 170
10.3.2  文件的关闭 172
10.4  文件的读写 172
10.4.1  文件的顺序读写 172
10.4.2  文件的顺序读写举例 181
10.4.3  文件的随机读写 182
10.4.4  文件操作的出错检测 185
10.5  小结 185
10.6  习题 186
第11章  位运算 188
11.1  C语言的位运算符 188
11.1.1  按位与运算符:& 188
11.1.2  按位或运算符:| 189
11.1.3  按位异或运算符:^ 189
11.1.4  取反运算符:~ 190
11.1.5  左移位运算符:<< 190
11.1.6  右移位运算符:>> 191
11.2  位运算举例 191
11.3  位段 193
11.4  小结 194
11.5  习题 195
第12章  指针的高级应用 196
12.1  动态存储空间的分配与释放 196
12.1.1  空间分配函数 196
12.1.2  空指针和无类型指针 197
12.1.3  空间释放函数 198
12.1.4  “悬空”指针问题 199
12.2  链表 200
12.2.1  声明结点类型 200
12.2.2  创建结点 201
12.2.3  输出链表结点信息 202
12.2.4  插入与删除链表结点 202
12.3  小结 206
12.4  习题 207
第13章  C程序设计风格与调试 208
13.1  C程序设计风格 208
13.1.1  标识符的命名 208
13.1.2  注释风格 209
13.1.3  清晰简洁的表达 211
13.1.4  C语言的书写格式 212
13.1.5  健全程序的风格标准 216
13.2  程序错误类型和调试 219
13.2.1  程序错误类型 219
13.2.2  程序错误分析方法 220
13.2.3  程序调试方法 221
13.3  常见错误分析 228
13.3.1  变量定义和使用方面 228
13.3.2  指针的使用方面 229
13.3.3  数组的使用方面 229
13.3.4  字符串使用方面 229
13.3.5  表达式运算符方面 230
13.3.6  语句描述方面 230
13.3.7  函数定义和使用方面 232
13.3.8  输入/输出方面 232
13.4  小结 234
第二部分  实践教学篇
实验一  Visual C++ 6.0集成开发环境的使用 235
实验二  数据类型 238
实验三  输入输出函数 240
实验四  选择结构程序设计 242
实验五  循环结构程序设计 245
实验六  数组 247
实验七  函数与模块化程序设计 249
实验八  数组、函数与指针的综合运用 251
实验九  读写文件 255
实验十  链表的创建与维护 257
C语言课程设计 259
附   录
附录一  ASCII码表 277
附录二  C关键字 279
附录三  C运算符 279
附录四  常用库函数 279
附录五  C常见算法 283

参考文献 287

教学资源推荐
作者: 郑阿奇 主编 丁有和 等编著
作者: Jie Wu
作者: [美]奥弗·曼德勒维奇(Ofer Mendelevitch) 凯西·斯特拉(Casey Stella) 著 道格拉斯·伊德理恩(Douglas Eadline)
作者: 哈罗德·阿贝尔森(Harold Abelson)[美] 杰拉尔德•杰伊·萨斯曼(Gerald Jay Sussman) 著朱莉·萨斯曼(Julie Sussman)