本书是《C程序设计教程》的第二版。然而从指导思想、内容结构、写作特点等方面,都以全新的面貌呈现于读者。全书全部重新执笔,代码全部重写,涵盖了基本C编程方法的全部技术特征。本书以C标准为蓝本,从过程化编程的基本描述,到对象化编程的方法展开,乃至高级编程的实质揭示,形成一条自然流畅的主线,通俗易懂,形象风趣。本书在内容结构上自成体系,并以独特的描述手法,辐射到计算机专业其他诸课程,体系严谨,结构独特。作者在长期的教学、科研实践以及ACM大学生程序设计竞赛培训工作中,总结出了许多难能可贵的教学经验,能使读者快捷而准确地找到编程技术要领,洞穿C内部实现要害,直击抽象编程本质。与本书配套,《C课程设计指导》、《C程序设计习题及解答》、《C程序设计教程详解》和《C程序设计教程精粹》也将陆续面世。除此之外,还配有C程序设计教程课件和源代码供读者下载。本书适用于大学计算机程序设计教学,也适合于立志自学成才的读者,帮助他们从零开始走向高级程序员。本书也旨在引导读者从欣赏C入门的初级精彩到享受C经典名作的内在精彩,因而,也是一本软件工作者不可多得的案头参考书。本书前言第二版前言计算机科学与应用的迅猛发展,直接推动了《C程序设计教程》一书的再版。C技术正突飞猛进,日臻完善,而人们也越来越多地需要更强有力的计算机语言工具帮助描述和解决实际的问题。基于此,新版在各方面较之第一版都作了大幅度的修改:在指导思想上,更加强调以培养具有实际编程能力的程序员为主要目标;在内容结构上,增强了描述的层次性,从编程基础、过程化编程、对象化编程,到高级编程的渐进,界限分明而又自然过渡;在写作特点上,其通俗易懂性较之第一版有过之而无不及;在使用范围上,它主要面向大学生、研究生、教师和科研工作者。由于本书自成体系,又辐射到计算机专业诸课程,所以对完善读者的计算机知识体系也大有裨益。C的权威计算机应用普及中,有两种学习内容:一种是学习其操作方法,一种是学习其开发方法。前者是学会如何使用计算机,将计算机作为工具,产生直接的经济效益;后者是通过在计算机上的创新活动,让计算机学习,以使计算机更"聪明"。显然后者需要付出更多的努力,也需要更多的计算机科学知识,当然可以产生更多、更大、更深远的经济效益,而且开发实践又会驱使其对计算机进行更深层次的研究。C的编程学习是后者的一种入门。在我国,计算机的发展还落后于发达国家,甚至还赶不上印度、新加坡。中国要实现软件产业大国的梦想,需要大量的高级程序员和软件工程师。程序设计语言的学习与运用是一个重要的契机。现在,大学计算机专业一年级必开程序设计课,甚至中小学的计算机兴趣小组和计算机信息学竞赛也要进行计算机编程。使用C作为学习和开发的语言在我国不断得到升温,而且,是否会编程俨然成了懂不懂计算机的一种标志了。无论搞开发,还是搞研究,对程序设计语言的使用有着同样高的要求:要能够有很好的可靠性、高效率,可以在不同平台上移植,有尽可能多的语言内容标准化,支持数据一致性,支持程序描述的简捷与清晰,风格自然。而这些,都是C语言的外在特点。C既是设计工具,又是实现工具,既可抽象概念,描述实际问题,又兼顾效率,能很好地实现底层的系统软件。