C语言程序设计是很多理工科专业,尤其是计算机专业学生必修的一门专业基础课。C语言从产生到现在,已经成为最重要和最流行的编程语言之一。学习、掌握C语言成为了每个计算机技术人员的一项基本功,也是在计算机领域中进一步学习和工作的基础。
本书在第一版的基础上,汲取了教学实践中众多师生的反馈意见和建议,调整了部分知识点的讲解顺序,改进了部分内容的叙述方式,并对部分同容进行了增删,修改了部分例题的解题方法。
程序设计课程的核心是计算机解题的思维方式,而思维要借助工具(如C语言)来表达。C语言本身功能强大、内容复杂,以语法为中,心的C语言书籍作为工具书是可行的,但作为程序设计课程的教材是有缺憾的“重语法轻思维”是舍本逐未的做法。本书最大的特点是向“纵深”结构发展,旨在“程序设计”重在培养学生在编程中解决问题的思维能力和编码能力,并没有试图覆盖C语言的所有语法知识点,语法知识点的引人是为解决问题服务的。带*号的章节为自学章节,也是为了提升学生编程能力而设计的,老师可以不讲,但学生必须要看。
本书的亮点在于示例程序的选取,通过问题分析和代码实现向读者传递枚举、模拟、递推、递归、空间换时间等计算思维方式,引导读者理解并践行这些思想,正确高效地使用C语言编程。例如,在循环结构一章,通过阶乘计算、数列求和、斐波那契数列等例子让读者深入掌握“递推”这一计算思维方法,从而充分利用中间结果,降低算法复杂度;通过百钱买百鸡等例子让读者接触“枚举”这一计算思维方法;通过模拟投点法计算圆周率近似值等例子让读者接触“模拟”“随机化”等计算思维方法。
本书由甘勇、李晔、卢冰编著,参编人员有王捷和苏虹。本书在编写过程中得到了贾志娟、赵少林、金保华、朱付保、段赵磊和李灿林等很多老师以及郑州轻工业学院教务处的帮助和支持,作者深表感谢。最后还要感谢所有第一版的读者,感谢你们对这本教材的厚爱及提出的宝贵意见。
由于作者水平有限,书中难免存在疏漏之处,敬请读者批评指正。
编 者
2015年6月