本书在教学内容的编排上,采用项目驱动知识的方式,即根据每一章项目案例的需求,合理地安排每一个知识主题的切入点,从而将C语言中枯燥难懂的语法知识分解到全书各章中,并力求通过程序实例归纳出来。
本书在讲解程序实例时,采用逐步构造法写出程序,即通过编程思路、算法设计、程序原型等环节一步一步地构造出完整的程序,从而加深读者对编程方法的理解和掌握。
在本书的各主要章节中,分别提供了若干个项目式案例,供读者学习参考之用。仔细研究这些案例,将有助于提高读者的程序设计能力。
本书内容依据当前*版的C语言参考手册编写,兼顾C89与C99标准。内容包括引论、基本数据与运算、顺序结构程序设计、选择结构程序设计、循环结构程序设计、数组、指针、字符与字符串处理、函数、函数的进一步讨论、编译预处理命令、结构体与共用体、位运算、文件等。
本书依据Visual C 2010 Express和DEV C 5.11集成开发环境进行讲述,符合当前软件的发展趋势,便于读者上机调试程序。
本书教学内容的编排顺畅合理,编程方法的讲解新颖独特,特别适合于初学者自学。本书可作为高等院校各专业学生学习C语言程序设计的教材和参考书。
本教材采用项目案例的形式讲授C语言程序设计的基本概念和方法,每章采用一到两个解决现实问题的项目案例贯穿始终,通过项目案例将本章基本的概念与编程方法展示并融合起来。使学生在一步一步不断完善实现项目的过程中,获得综合分析解决现实问题的能力,而不是只学会一些支离破碎、互不联系的孤立知识。
前言
C语言是目前世界上使用最广的高级程序设计语言,被广泛地应用于系统程序设计、数值计算、自动控制等诸多领域。
C语言的产生颇为有趣,C语言实际上是UNIX操作系统的一个副产品。1972年,美国贝尔实验室的Dennis
Ritchie为了开发UNIX操作系统,专门设计了一种新的语言C语言。由于C语言具有强大的功能和很高的运行效率,兼具高级语言的直观性与低级语言的硬件访问能力,因而很快从贝尔实验室进入了广大程序员的编程世界。
由于Dennis Ritchie设计C语言的初衷是用于开发UNIX操作系统,因此C语言称得上是一门专业语言。这使得C语言在具有强大的功能和较高的运行效率的同时,也在一定程度上存在语法晦涩难懂、不便于初学者掌握的不足之处。
因此,C语言似乎不太适合作为程序设计初学者的入门语言。不过在现代人效率观念的驱使下,仍有许多学校将C语言选作初学者的入门语言。
其实,这样选择也未尝不可。只不过在教学中应当思考如何采取有效的应对策略,使初学者避开那些晦涩难懂的语法,从C语言最基本、最实用的编程方法入手,力争使学习者尽快地学会程序设计的基本方法,进而达到应用编程解决实际问题的境界。
从学习者的角度来说,要注意抓住C语言学习的要害所在编程方法,而不要沉溺于C语言的语法细节之中。因为学习C语言的目的是为了编写程序解决实际问题,而过于细致地研究C语言的语法对于提高编程能力并没有太大的帮助。
针对上述问题,本书作者在教学内容的编排上,采用了项目驱动知识的方式,即根据各章项目案例的需求,合理地安排每一个知识主题的切入点,从而将C语言中枯燥难懂的语法知识分解到全书各章中,并力求通过程序实例归纳出来。
本书在讲解程序实例时,采用逐步构造法写出程序,即通过编程思路、算法设计、程序原型等环节一步一步地构造出完整的程序,从而加深读者对编程方法的理解和掌握。
学习知识的最终目的是运用知识解决现实中的问题,而面向项目的教学就是一种紧密结合现实问题的、能够有效地提高学习者综合分析问题和解决问题能力的教学模式。在本书的各主要章节中,分别提供了若干个项目式案例,供读者学习参考之用。仔细研究这些案例,将有助于提高读者的程序设计能力。
本书第1章、第2章由李业刚编写,第3章、第11章由李增祥编写,
第13章、第14章由淄博技师学院史国兴编写,
其余各章由巨同升编写。全书由巨同升统筹并定稿。
在本书的编写过程中,作者得到了山东理工大学计算机科学与技术学院广大同仁的大力支持与帮助,在此表示感谢。
由于作者水平所限,书中难免存在不足之处,敬请广大专家和读者批评指正。
编者2018年1月于山东理工大学