C语言是许多大学计算机及其相关专业开设的一门重要的专业基础课 ,也是大多数学生学习的门程序设计类课程。对于次接触程序设计语言的学生来说 ,掌握 C语言是有一定难度的。C语言课程中 ,讲授语法只是一个方面 ,更重要是培养学生的程序设计思想 ,而这一目的的达成是建立在大量的编程实践的基础上的。编者在多年的 C语言教学中 ,不断地摸索、尝试突破固有的 C语言知识体系 ,通过项目引导学生在编程实践中学习和巩固知识点。这种想法和做法与 CDIO工程教育模式所倡导的 “基于项目的学习 ”理念不谋而合 ,这本教材正是在这一背景下应运而生的。(1)适用对象本教材适用于计算机相关专业本科 C语言系列课程和专科 C语言系列课程的教学。本教材亦可作为非计算机专业 C语言课程的教材及 C语言零起点的读者的参考用书。读者学习本教材后 ,能够掌握 C语言的基础语法 ,并利用所学到的 C语言理论知识解决简单规模的程序设计。(2)需要具备的知识和能力基础学习本教材需要读者预先掌握计算机的基本概念 ,包括文件、文件夹、内存的概念以及计算机的基本工作原理等 ,同时还需要读者掌握操作系统的基本操作 ,如创建文件夹、新建文件等。另外 ,为了对数据表示、指针、位运算等能更好地理解 ,读者应能初步理解计算机中数据的表示和存储及数制转换等知识。(3)教学总体目标C语言的学习 ,将为后续的数据结构课程及其他程序设计语言类课程打下坚实的基础。本教材以项目驱动的方式 ,导出 C语言的各个知识点 ,从以下几个方面培养读者的 CDIO能力 :①计算机软件开发知识 :掌握 C语言的各重要知识点 ,具备良好的编程习惯和编程风格 ;②系统的显现和交互作用 :能够理解函数的思想 ,对简单系统能够理解如何分解为多个模块,并了解模块 (函数 )之间的关系 ;③引进、消化、吸收再创新能力 :根据已学到知识 ,能够对现有系统进行改进和完善 ;④软件实现过程 :能够综合运用 C语言知识来解决具体问题的编程实现的能力 ;⑤测试、证实、验证及认证 :能够通过执行程序来测试、验证预期的结果 ,具备初步的调试程序的能力。