标题：C语言编程之道（1DVD）
图书信息
书名：《C语言编程之道》 
出版社：人民邮电出版社 
ISBN：978-7-115-24546-5
出版时间：2011-03-01  
作者：明日科技 刘彬彬 孙秀梅 李鑫 
定价：59元RMB
  
内容简介
这是一本集编程感悟、技巧、陷阱、谬误和算法为一体的书籍，旨在引导读者如何正确地学习编程，帮助读者丰富编程经验。全书分为5篇，共15章，全面介绍了学习和应用C语言进行程序开发的各种陷阱与谬误、技术细节与经验技巧、常用的算法等。其涉及的技术主要包括C语言关键技术、指针、数组、数据结构、数学应用、算法等相关技术细节、技巧。
本书附带有配套DVD光盘，光盘中提供了书中全部实例和项目的源代码，这些源代码都是经过作者精心调试通过的，保证能够在Windows XP、Windows Server 2003操作系统下编译和运行。
本书非常适合大中专院校在校生、毕业生、求职者、编程爱好者学习，同时也可以作为想要学习编程的初学者的指导用书。
图书目录
第1篇　编程经验与感悟——站在前人臂膀上前行
第1章　步入编程殿堂　2
感悟01　编程我也行　2
感悟02　如何选择编程语言　2
感悟03　培养对编程的兴趣　4
感悟04　学习编程要打好基本功　6
感悟05　多与别人交流　7
感悟06　锻炼开放性思维　7
感悟07　思维方式要灵活　9
感悟08　不断温习学过的知识　9
感悟09　坚持比激情更重要　9
第2章　编程高手具有的基本素质和能力　11
经验01　善于总结编程经验　11
经验02　创造或寻找方法　11
经验03　重视程序中的小错误　12
经验04　在调试与改错中成长　12
经验05　养成良好的编程风格　13
经验06　要重视实践练习　14
经验07　善于利用丰富的网络资源　15
经验08　学习与培训的必要性　15
经验09　多向他人学习　15
经验10　写程序之前要分析　16
经验11　写程序之后要总结　17
经验12　软件需求规格说明书　18
经验13　逐步培养个人的编程思想　18
经验14　面试经验谈　19
第3章　畅谈编程　21
感悟01　程序员的成长之路　21
感悟02　程序员的生存法则　22
感悟03　程序员的生涯规划　23
感悟04　项目开发经验谈　24
感悟05　信息技术改变我们的生活　26
第2篇　陷阱与谬误——汲取前人的教训
第4章　开发人员不可忽略的22个技术陷阱　30
陷阱01　忽略了大小写的区别　30
陷阱02　"{}”与“()”使用不当造成错误　31
陷阱03　多加分号导致出错　32
陷阱04　使用循环语句不慎产生死循环　33
陷阱05　忽视do...while循环次数产生的错误　34
陷阱06　数据溢出产生的陷阱　35
陷阱07　整数的除法导致结果的偏差　36
陷阱08　变量未定义　37
陷阱09　输入数据时忘记添加&符号　38
陷阱10　使用scanf函数输入格式不符　39
陷阱11　输入的数据类型不符的陷阱　41
陷阱12　switch语句中忘记使用break　42
陷阱13　指针没被初始化　43
陷阱14　操作超出动态分配的内存　44
陷阱15　使用内存后未释放　45
陷阱16　内存释放了继续使用　46
陷阱17　没有说明函数的头文件　47
陷阱18　忽略了字符串结束符　48
陷阱19　数组长度使用变量　49
陷阱20　数组下标“越界”　51
陷阱21　子函数未定义产生的陷阱　52
陷阱22　子函数在说明和定义时类型不一致　53
第5章　36个开发人员意识中的常见谬误　55
谬误01　Main大写错误　55
谬误02　“=”与“==”　55
谬误03　scanf()错误　56
谬误04　循环错误　57
谬误05　在定义数组时，将定义的“元素个数”误认为是可使用的最大下标值　57
谬误06　混淆了字符与字符串常量　57
谬误07　使用==比较字符串　58
谬误08　没有使用零字符结束字符串　58
谬误09　不正确的使用fgetc()等函数　58
谬误10　a和&a的区别　59
谬误11　gets()函数的使用　60
谬误12　忽略了变量的类型，进行了不合法的运算　60
谬误13　忘记加分号　60
谬误14　路径名错误　61
谬误15　#include stdio.h和#include "stdio.h"的区别　61
谬误16　函数调用的错误　61
谬误17　空指针并非空字符串　62
谬误18　枚举类型容易出错的几个问题　62
谬误19　&、|、~与&&、||、！的谬误　63
谬误20　system()和clrscr()的区别　63
谬误21　使用getchar()函数的误区　63
谬误22　使用errno检测错误　64
谬误23　宏定义中不可忽视的空格　65
谬误24　*p++是自增p还是p做指向的变量　65
谬误25　char a[]和char *a是一样的　65
谬误26　指针变量与零值的比较　66
谬误27　const和#define是一样的　66
谬误28　浮点变量与零值的比较　66
谬误29　宏定义中的常见谬误　67
谬误30　a[i]=i++;代码正确吗　68
谬误31　数组和指针等价吗　68
谬误32　指针和数组的区别　68
谬误33　指针比数组执行快　69
谬误34　++i比i=i+1执行快　69
第3篇　技术细节——修炼编程内功心法
第6章　26个C语言基础知识技术细节　72
细节01　标识符的使用　72
细节02　限定词const　73
细节03　限定词volatile　73
细节04　变量的存储　74
细节05　字符数据类型　74
细节06　说明变量和定义变量　75
细节07　typedef应用的技术要点　76
细节08　使用static关键字声明静态变量　77
细节09　如何区分“，”是运算符还是分隔符　78
细节10　基本的算术运算　79
细节11　自增、自减操作符的使用　81
细节12　C语言中的特殊表达式　82
细节13　特殊表达式e1?e2:e3　83
细节14　使用printf函数输出%　83
细节15　%lf与%f差异　84
细节16　scanf与gets　85
细节17　什么时候用switch　86
细节18　if语句的多个判断问题　88
细节19　break在switch语句中的使用　89
细节20　while与do...while的异同　90
细节21　while、do...while、for循环相互转换　91
细节22　循环不能交叉　92
细节23　goto语句使用规则　93
细节24　合理使用return语句　93
细节25　合理使用空格使代码更规范　94
细节26　C语言如何解释a  b  c　94
第7章　19个C语言重点知识技术细节　96
细节01　判断数组中元素的个数　96
细节02　向函数传递二维数组　97
细节03　字符数组的结束标志　97
细节04　extern声明数组　98
细节05　数组下标从0开始　101
细节06　数组名作函数参数与数组元素做函数参数的不同之处　101
细节07　'\0’和“\0”的区别　102
细节08　静态全局变量与全局变量　102
细节09　访问寄存器变量地址　102
细节10　参数校验　103
细节11　什么是空指针　103
细节12　if(p)检查指针是否为空　104
细节13　指针变量赋值相关　104
细节14　const定义指针变量　105
细节15　char a[]与char *a　106
细节16　指针应用　107
细节17　指针类型和指针所指向的类型　108
细节18　指针运算与取地址运算符的联系　109
细节19　函数型指针　109
第8章　18个C语言高级技术细节　111
细节01　定义结构体对结构体成员的类型限制　111
细节02　成员运算符(.)和（-）的差异　111
细节03　结构体和联合体的区别和联系　111
细节04　enum的好处　112
细节05　.h文件　113
细节06　宏定义问题　114
细节07　条件编译　115
细节08　文件打开　115
细节09　C语言中的预处理功能　117
细节10　使用宏时需要注意些什么　117
细节11　文件包含的嵌套　117
细节12　malloc()与 calloc()的区别　118
细节13　什么是“内存泄露”　119
细节14　内存耗尽了怎么办　119
细节15　常见的内存管理错误有哪些　120
细节16　标准文件和一般文件有什么区别　120
细节17　C语言的常用库文件包含哪些　120
细节18　为什么文件打开以后要及时关闭　122
第4篇　编程技巧——程序员的神兵利器
第9章　C语言开发人员必知必会的基本技能开发技巧　124
技巧01　十进制数转换为十六进制　124
技巧02　N进制转换为十进制　125
技巧03　IP地址形式输出　126
技巧04　数字由小到大排序　127
技巧05　阶梯问题　129
技巧06　判断闰年　130
技巧07　对调数问题　131
技巧08　评定成绩等级　133
技巧09　打印乘法口诀表　134
技巧10　打印杨辉三角　135
技巧11　特殊等式　137
技巧12　统计各种字符个数　138
技巧13　猴子吃桃　139
技巧14　删除字符串中连续字符　140
技巧15　求学生的平均身高　141
技巧16　灯塔数量　143
技巧17　老师分糖果　144
技巧18　小球下落问题　145
技巧19　彩球问题　146
第10章　指针开发技巧　148
技巧01　使用指针实现整数排序　148
技巧02　使用指针实现数据交换　149
技巧03　指向结构体变量的指针　151
技巧04　使用指针输出数组元素　152
技巧05　用指针实现逆序存放数组元素值　153
技巧06　使用指针查找数列中最大值/最小值　154
技巧07　使用指针实现字符串复制　156
技巧08　使用指针实现字符串的连接　158
技巧09　使用指针实现字符串插入　159
技巧10　使用指针实现字符串的匹配　160
技巧11　用指向函数的指针比较大小　162
技巧12　使用返回指针的函数查找最大值　163
技巧13　用指针函数实现求学生成绩　164
技巧14　寻找指定元素的指针　165
技巧15　寻找相同元素的指针　167
技巧16　使用指针的指针输出字符串　168
技巧17　实现输入月份输出该月份英文名　170
技巧18　使用指向指针的指针对字符串排序　171
第11章　文件开发技巧　173
技巧01　读取磁盘文件　173
技巧02　将数据写入磁盘文件　175
技巧03　格式化读写文件　176
技巧04　成块读写操作　177
技巧05　随机读写文件　179
技巧06　复制文件内容到另一文件　181
技巧07　合并两个文件信息　182
技巧08　文件分割　183
技巧09　文件加密　185
技巧10　统计文件内容　186
技巧11　创建文件　188
技巧12　创建临时文件　189
技巧13　重命名文件　190
技巧14　删除文件　191
技巧15　删除文件中的记录　192
技巧16　查找文件　193
技巧17　显示目录内同类型文件　194
技巧18　关闭打开的所有文件　196
技巧19　错误处理　198
第12章　数学应用开发技巧　201
技巧01　求100～200之间的素数　201
技巧02　可逆素数　202
技巧03　回文素数　203
技巧04　特殊的完全平方数　204
技巧05　求1000以内的完数　205
技巧06　三重回文数　206
技巧07　亲密数　207
技巧08　自守数　208
技巧09　满足abcd=(ab+cd)2的数　209
技巧10　神奇的数字6174　210
技巧11　一数三平方　211
技巧12　求等差数列　213
技巧13　求整数的绝对值　214
技巧14　正弦、余弦、正切值　215
技巧15　自然对数的底e的计算　216
技巧16　最大公约数及最小公倍数　216
技巧17　求解二元一次不定方程　217
技巧18　二分法求解方程　219
技巧19　牛顿迭代法解方程的根　220
技巧20　打印特殊方阵　221
技巧21　求3×3矩阵对角元素之和　222
技巧22　矩阵的加法运算　223
技巧23　矩阵的乘法运算　224
技巧24　打印n阶螺旋方阵　225
技巧25　求车运行速度　226
技巧26　卖西瓜　228
技巧27　巧分苹果　228
第13章　C语言开发人员必知必会的数据结构开发应用技巧　230
技巧01　结构体简单应用　230
技巧02　找最高分　233
技巧03　平均成绩　235
技巧04　比较计数　235
技巧05　信息查询　237
技巧06　计算开机时间　238
技巧07　创建双向链表　240
技巧08　创建循环链表　244
技巧09　创建顺序表并插入元素　246
技巧10　向链表中插入节点　248
技巧11　从链表中删除节点　250
技巧12　合并两个链表　253
技巧13　应用栈实现进制转换　255
技巧14　括号匹配检测　258
技巧15　串的模式匹配　261
技巧16　简单的文本编辑器　262
第14章　C语言开发人员必知必会的高级开发技巧　267
技巧01　设置DOS系统时间　267
技巧02　设置DOS系统日期　268
技巧03　函数实现字符匹配　269
技巧04　查找位置信息　270
技巧05　建立目录　272
技巧06　复制当前目录　273
技巧07　删除目录　274
技巧08　访问系统temp中文件　276
技巧09　设置组合键　277
技巧10　获取当前日期与时间　278
技巧11　设置系统日期　279
技巧12　获取BIOS常规内存容量　281
技巧13　获取CMOS密码　282
技巧14　鼠标中断　284
技巧15　备份/恢复硬盘分区表　286
技巧16　获取系统配置信息　290
技巧17　恢复内存文本　292
技巧18　控制扬声器声音　295
第5篇　算法和效率——程序员的得力助手
第15章　常用的30个算法及应用　298
算法01　冒泡排序　298
算法02　选择排序　300
算法03　直接插入排序　301
算法04　归并排序　303
算法05　希尔排序　305
算法06　快速排序　307
算法07　顺序查找　309
算法08　二分查找　310
算法09　分块查找　312
算法10　哈希查找　314
算法11　斐波那契数列　317
算法12　角谷猜想　319
算法13　歌德巴赫猜想　320
算法14　四方定理　322
算法15　尼科彻斯定理　323
算法16　创建单向链表　325
算法17　约瑟夫环　328
算法18　双链表逆序输出　330
算法19　二叉树的遍历　332
算法20　用栈设置密码　334
算法21　链队列　338
算法22　SHA加密　342
算法23　MD5加密　349
算法24　RSA加密　359
算法25　DES加密　361
算法26　RC4加密　366
算法27　打渔晒网问题　369
算法28　水池注水问题　371
算法29　迪杰斯特拉算法　372
算法30　百钱买百鸡　374