“这个世界不再仅仅因为人们知道什么就奖励他们,因为互联网知道一切”。“真正的学习不是你记住了某个知识点,然后把它写在考卷上得分,而是将这些知识点都记在你的脑子里,消化形成自己的思考,然后作出独立的判断,并凭之增进你对世界的理解”。C语言是精心设计的编程语言,几乎每个知识点都值得思考。
本书从用户、计算机、程序员及C语言的关系开始,深入浅出地分析了C语言的诸多重难点,高屋建瓴地讨论了知识点为什么是这样。本书将知识能力有机融合,示范了解决复杂问题的综合能力和高级思维。
本书便于读者自主学习。每章有导学有讨论及提示。用计算机与C语言的关系图、函数执行图、递归函数执行图、二维数组图和动态二维数组图等近百幅图形象地展示知识点。通过画表格法分析循环执行过程提升编程能力。注重呈现算法从产生到完善的过程。强调“针对问题设计算法编程测试”能力的培养。
本书对C语言知识点的分析更深刻。给出了完整的表达式求值规则,讨论了操作符为何有序列点及将逗号操作符优先级设计为最低的原因。解释了算术表达式求值时操作符类型怎样自动转换。讨论了嵌套的选择结构和循环结构与自顶向下逐步求精的关系。分析了函数与代码重用及团队开发的关系。明确了指针变量的主要作用:作形参时扩展存储单元的使用范围和像数组那样标识一组存储单元。准确解释了数组变量,进而清晰揭示了二维数组与动态二维数组的组织方式。把文件看成存储单元的集合,简明地讨论了文件的用法。结合计算机的五大组成部件系统地分析了C语言。
缘于深刻,所以简明,易于自学,便于思考。本书既可作为各类院校C语言课程的教材,也可用作社会培训用书。