标题：C语言编程新手自学手册
基本信息
  C语言编程新手自学手册封面C语言编程新手自学手册
ISBN：9787111358343
定价：69.80元
作者：张玲玲
出版社：机械工业出版社
时间：2011年11月
版次：1-1
开本：16
内容简介
《C语言编程新手自学手册》内容简介：C语言是当今使用最为广泛的编程语言之一，一直在开发领域占据重要的地位。《C语言编程新手自学手册》循序渐进、由浅入深地详细讲解了C语言开发的核心技术，并通过具体实例的实现过程演练了各个知识点的具体使用流程。全书共18章，第1～8章是基础篇，分别讲解了C语言开发的基本知识，包括C语言概述，算法和数据类型，运算符和表达式，C语句和数据的输入/输出，流程控制，数组和字符串，函数指针等知识；第9-12章是核心技术篇，分别讲解了结构体、共用体和枚举，链表，位运算处理，预编译等知识；第13～15章是提高篇，分别讲解了文件操作处理，错误和程序调试，高级编程技术等知识；第16～18章是综合实战篇，通过3个综合实例的实现过程，介绍了C语言在综合项目中的应用。全书以日记为主线，以“一问一答”引出问题，并穿插了C语言的学习技巧和程序员职场经验，引领读者踏上C语言编程之路。《C语言编程新手自学手册》适用于C语言初学者，也适用于有一定C语言基础的读者，还可以作为有一定经验的程序员的参考书。
图书目录
目    录
丛书序
前言
第一篇  基  础  篇
第1章  C语言概述1
1.1  C语言发展史2
1.2  C语言的特点2
1.3  C语言编译器3
1.4  安装Turbo C 3.03
1.5  Turbo C/C++ 3.0集成开发环境介绍6
1.5.1  文件菜单（File）7
1.5.2  编辑菜单（Edit）7
1.5.3  运行菜单（Run）7
1.5.4  编译菜单（Compile）8
1.5.5  项目菜单（Project）8
1.5.6  调试菜单（Debug）9
1.6  进行C语言程序开发的步骤9
1.6.1  编辑源代码10
1.6.2  编译10
1.6.3  链接10
1.6.4  运行10
1.7  一个简单的C语言程序11
1.8  C语言程序的结构12
1.8.1  C程序组成部分12
1.8.2  C程序格式总结15
1.9  疑难问题解析16
职场点拨--C语言的地位17
第2章  算法和数据类型18
2.1  算法基础19
2.1.1  算法的概念19
2.1.2  流程图表示算法20
2.1.3  C语言表示算法21
2.2  C语言的数据类型22
2.3  常量和变量23
2.3.1  常量23
2.3.2  变量24
2.4  整型数据27
2.4.1  整型常量27
2.4.2  整型变量28
2.5  实型数据30
2.5.1  实型常量30
2.5.2  实型变量31
2.5.3  实型常量的类型33
2.6  字符型数据34
2.6.1  字符常量34
2.6.2  字符串常量35
2.6.3  字符变量36
2.7  初始化变量38
2.8  整型、实型、字符型数据间的运算39
2.8.1  自动转换39
2.8.2  强制转换40
2.9  疑难问题解析40
职场点拨--毕业生的选择41
第3章  运算符和表达式43
3.1  运算符和表达式基础43
3.1.1  运算符的种类44
3.1.2  运算符的优先级45
3.2  算术运算符和算术表达式46
3.2.1  单目运算符46
3.2.2  双目运算符47
3.3  赋值运算符和赋值表达式49
3.3.1  基本赋值运算符49
3.3.2  复合赋值运算符51
3.3.3  赋值表达式52
3.4  关系运算符和关系表达式53
3.5  逻辑运算符和逻辑表达式55
3.6  逗号运算符和逗号表达式57
3.7  求字节数运算符59
3.8  疑难问题解析61
职场点拨--养成良好的编程习惯62
第4章  C语句和数据的输入/输出64
4.1  C语句初步64
4.1.1  C语句简介65
4.1.2  空白的作用66
4.1.3  赋值语句67
4.2  数据的输入/输出68
4.2.1  字符输出函数putchar ()69
4.2.2  字符输入函数getchar()70
4.2.3  格式输出函数printf()72
4.2.4  格式输入函数scanf ()75
4.2.5  字符串输出函数puts ()79
4.2.6  字符串输入函数gets()80
4.3  疑难问题解析81
职场点拨--面试的准备83
第5章  流程控制84
5.1  顺序结构85
5.2  选择结构86
5.2.1  单分支结构语句86
5.2.2  双分支结构语句88
5.2.3  多分支结构语句92
5.2.4  条件运算符和条件表达式95
5.3  循环结构96
5.3.1  for语句97
5.3.2  while语句100
5.3.3  do-while语句102
5.3.4  循环语句的总结和效率104
5.3.5  goto语句105
5.3.6  break语句106
5.3.7  continue语句107
5.3.8  死循环和退出程序107
5.4  疑难问题解析109
职场点拨--程序员的发展方向111
第6章  数组和字符串113
6.1  一维数组113
6.1.1  定义一维数组114
6.1.2  初始化一维数组114
6.1.3  引用一维数组元素117
6.2  多维数组119
6.2.1  二维数组119
6.2.2  多维数组123
6.3  字符数组与字符串126
6.3.1  字符数组126
6.3.2  字符串与字符数组127
6.3.3  字符数组的输入/输出128
6.4  字符串处理函数130
6.4.1  测试字符串长度函数130
6.4.2  字符串大小写转换函数131
6.4.3  字符串复制函数132
6.4.4  字符串比较函数133
6.4.5  字符串连接函数135
6.4.6  其他字符串函数136
6.4.7  将字符串转换成数值的函数136
6.5  字符处理函数137
6.5.1  字符检测函数138
6.5.2  字符大小写转换函数139
6.6  疑难问题解析141
职场点拨--和客户的沟通技巧143
第7章  函数144
7.1  C语言函数基础145
7.1.1  C语言函数的种类145
7.1.2  定义函数146
7.2  函数的声明和函数原型148
7.3  参数149
7.3.1  形参和实参149
7.3.2  数组名作为函数参数151
7.3.3  数组作为函数参数154
7.4  返回值156
7.5  函数的调用159
7.5.1  函数调用格式159
7.5.2  函数调用的方式160
7.5.3  对被调函数的声明162
7.5.4  调用函数方式的深入分析162
7.6  函数的嵌套调用和递归调用164
7.6.1  嵌套调用164
7.6.2  递归调用170
7.7  变量的作用域和生存期173
7.7.1  变量作用域173
7.7.2  静态存储变量和动态存储变量177
7.8  内部函数和外部函数184
7.8.1  内部函数184
7.8.2  外部函数185
7.9  库函数基础187
7.9.1  C库函数介绍187
7.9.2  C库函数分类187
7.10  项目文件188
7.11  疑难问题解析190
职场点拨--谈模块化设计191
第8章  指针193
8.1  指针的基本概念194
8.2  变量的指针和指向变量的指针变量194
8.2.1  声明194
8.2.2  初始化195
8.2.3  引用196
8.2.4  几个说明197
8.2.5  指针变量运算199
8.2.6  指针变量作为函数参数200
8.2.7  void类型的指针203
8.3  指针和数组205
8.3.1  数组元素的指针205
8.3.2  指向一维数组元素的指针变量206
8.3.3  通过指针引用数组元素207
8.3.4  使用指针变量应该注意的问题211
8.3.5  数组名作函数参数214
8.4  指针和多维数组217
8.4.1  多维数组的地址217
8.4.2  指向多维数组的指针变量219
8.5  指针和字符串222
8.5.1  指针访问字符串222
8.5.2  字符串指针作为函数参数224
8.5.3  使用字符串指针变量与字符数组的区别225
8.6  指针数组和多级指针226
8.6.1  指针数组226
8.6.2  多级指针的定义和应用227
8.6.3  指向指针的指针230
8.6.4  main函数的参数230
8.7  指针函数和函数指针232
8.8  疑难问题解析236
职场点拨--与客户相处之道237
第二篇  核心技术篇
第9章  结构体、共用体和枚举239
9.1  结构体240
9.1.1  定义结构体类型240
9.1.2  结构体类型变量的定义241
9.1.3  结构体变量的引用243
9.1.4  结构体变量的初始化245
9.2  结构体数组246
9.2.1  结构体数组定义247
9.2.2  结构体数组的初始化249
9.2.3  结构体数组的引用250
9.3  结构体指针252
9.3.1  结构体指针变量的定义252
9.3.2  结构体指针变量的初始化252
9.3.3  结构体指针变量的引用253
9.3.4  指向结构体变量的指针254
9.3.5  指向结构体数组的指针255
9.4  结构体和函数256
9.4.1  结构体变量和结构体指针作为函数参数256
9.4.2  返回结构体类型值的函数257
9.5  共用体259
9.5.1  共用体和共用体变量的定义259
9.5.2  共用体变量的引用与初始化261
9.5.3  结构和共用体的区别263
9.6  枚举264
9.6.1  定义枚举类型264
9.6.2  定义枚举变量265
9.6.3  枚举变量的引用265
9.7  用typedef定义类型267
9.8  疑难问题解析269
职场点拨--寻找兼职270
第10章  链表272
10.1  动态内存分配272
10.1.1  为什么用动态内存分配272
10.1.2  如何实现动态内存分配及其管理273
10.2  链表276
10.2.1  链表概述276
10.2.2  单向链表277
10.2.3  创建链表280
10.2.4  删除整个链表280
10.2.5  在链表中插入节点280
10.2.6  在链表中删除节点281
10.2.7  双向链表282
10.2.8  循环链表285
10.3  疑难问题解析285
职场点拨--兼职可靠吗？286
第11章  位运算287
11.1  位运算符和位运算287
11.1.1  按位与运算288
11.1.2  按位或运算289
11.1.3  按位异或运算289
11.1.4  取反运算290
11.1.5  左移运算291
11.1.6  右移运算291
11.1.7  位运算应用实例292
11.2  位域293
11.3  疑难问题解析295
职场点拨--确定要寻找更好的工作吗？297
第12章  预编译处理298
12.1  预编译概述298
12.2  宏定义299
12.2.1  不带参数的宏定义299
12.2.2  带参数的宏定义302
12.2.3  字符串化运算符304
12.2.4  并接运算符304
12.3  文件包含304
12.4  条件编译306
12.4.1  #ifdef…#else…#endif命令307
12.4.2  #if defined…#else…#endif308
12.4.3  #ifndef…#else…#endif308
12.4.4  #if !defined…#else…#endif309
12.4.5  #ifdef…#elif…#elif….#else…#endif309
12.5  疑难问题解析312
职场点拨--从沟通谈职业素养315
第三篇  提  高  篇
第13章  文件操作处理317
13.1  文件基础318
13.1.1  文件分类318
13.1.2  文件指针319
13.2  文件的打开与关闭319
13.2.1  打开文件320
13.2.2  关闭文件322
13.3  文件的读/写操作324
13.3.1  字符读/写函数324
13.3.2  字符串读/写函数327
13.3.3  格式化读/写函数330
13.3.4  数据块读/写函数331
13.3.5  其他读/写函数333
13.4  文件的随机读/写334
13.4.1  fseek()函数334
13.4.2  rewind()函数337
13.4.3  ftell()函数337
13.5  文件管理函数339
13.5.1  删除文件339
13.5.2  重命名文件339
13.5.3  复制文件340
13.6  文件状态检测函数342
13.6.1  feof()函数343
13.6.2  ferror()函数343
13.6.3  clearerr()函数343
13.7  疑难问题解析346
职场点拨--团队精神347
第14章  错误和程序调试349
14.1  常见错误分析349
14.2  错误的检出与分离355
14.3  程序调试357
14.4  疑难问题解析360
职场点拨--与上级相处之道361
第15章  C语言高级编程技术363
15.1  高级编程技术概述364
15.2  文本的屏幕输出和键盘输入364
15.2.1  文本的屏幕输出364
15.2.2  键盘输入370
15.2.3  应用实例372
15.3  图形显示方式和鼠标输入374
15.3.1  图形模式的初始化375
15.3.2  清屏和恢复显示方式的函数377
15.3.3  独立图形运行程序的建立378
15.3.4  基本绘图函数378
15.3.5  画线的线性函数383
15.3.6  颜色控制函数386
15.3.7  封闭图形的填色函数及有关画图函数390
15.3.8  图形窗口函数394
15.3.9  图形方式下的文本输出函数395
15.4  菜单设计398
15.4.1  实现下拉式菜单399
15.4.2  实现弹出式菜单402
15.5  网络编程基础408
15.5.1  常用协议报头408
15.5.2  Winsock基础412
15.6  疑难问题解析414
职场点拨--升职经验谈415
第四篇  综合实战篇
第16章  俄罗斯方块游戏417
16.1  游戏功能描述417
16.2  游戏总体设计417
16.2.1  功能模块设计418
16.2.2  构成函数介绍420
16.2.3  数据结构设计421
16.3  游戏具体实现423
16.3.1  预处理423
16.3.2  主函数426
16.3.3  初始化界面处理429
16.3.4  时钟中断处理430
16.3.5  成绩、速度和帮助处理431
16.3.6  满行处理432
16.3.7  方块显示和消除处理434
16.3.8  游戏方块操作判断处理436
第17章  Ping网络项目设计441
17.1  系统功能描述441
17.2  系统总体设计441
17.2.1  功能模块设计441
17.2.2  数据结构设计444
17.2.3  构成函数介绍445
17.3  系统具体实现446
17.3.1  预处理446
17.3.2  初始化处理448
17.3.3  控制模块449
17.3.4  数据报解读处理452
17.3.5  Ping测试处理454
17.3.6  主函数457
第18章  学生成绩管理系统459
18.1  系统总体描述459
18.1.1  项目开发的目标459
18.1.2  系统功能描述459
18.2  系统总体设计461
18.2.1  功能模块设计461
18.2.2  数据结构设计462
18.2.3  构成函数介绍463
18.3  系统具体实现465
18.3.1  预处理465
18.3.2  主函数main()466
18.3.3  系统主菜单函数468
18.3.4  表格显示信息468
18.3.5  信息查找定位469
18.3.6  格式化输入数据470
18.3.7  增加学生记录471
18.3.8  查询学生记录472
18.3.9  删除学生记录474
18.3.10  修改学生记录475
18.3.11  插入学生记录476
18.3.12  统计学生记录478
18.3.13  排序处理479
18.3.14  存储学生信息480
参考文献486