
总 序
高职高专教育已成为我国普通高等教育的重要组成部分。“十一五”期间,国家已安排了20亿元专项资金用
来支持100所高水平示范院校的建设,如此大规模的建设计划在我国职业教育发展历史上还是第一次,表明国
家正在深化高职高专教育深层次的重大改革,加大力度推动生产、服务第一线真正需要的应用型人才的培养。
海南软件职业技术学院为适应当前我国高职高专教育如火如荼的发展形势,以及信息知识日新月异、信息技
术不断升级更新的形势,组织本校的骨干教师及相关行业的工程师,共同策划编写了一套符合当前职业教育
改革精神的实用型教材——“职业院校信息技术与电子商务专业应用型教材”。
本系列教材充分体现了高职高专教育的特点,突出了理论和实践的紧密结合,本着“易学,易用”的编写原
则,以学生充分掌握基本技术技能和必要的基本知识为出发点,强调学生创造能力、创新精神和解决实际问
题能力的培养。
本系列教材在组织、策划和编写中尽可能地适应当今高职高专教育领域教学改革和教材建设的新需求和新特
点,具有如下特色:
1.突出“实用”。概念理论取舍得当,够用为度,降低难度。对概念和基本理论,尽量用具体事物或案例自
然引出。
2.基本操作环节讲述具体详细,可操作性强,使学生很容易掌握基本技能。
本系列教材第一批共有5本,包括《程序设计入门——C语言》、《SQL Server 2005案例教程》、《高等数学》、
《计算机网络技术》和《计算机应用基础与实训》,辐射到高职高专信息类各专业的专业基础课及公共课。
我们期望,本系列教材的编写和推广应用,能够进一步推动高职类信息教育的教学模式、课程体系和教学方法
的改革,使我国信息类职业技术教育日臻成熟和完善。同时,欢迎兄弟院校更多的老师参与到本系列教材的建
设中来。
编委会
2009年4月10日
前 言
自20世纪70年代C语言产生至今,计算机界经历着深刻的变革,随着大型机、个人计算机处理能力的不断提高,C语言同时也在发生着变化。C语言原本只是为了编写UNIX操作系统,但是现在,它已经远远超出了这个初衷。C语言由于其功能强、使用灵活、可移植性好、目标程序质量高而受到广泛的欢迎。随着C语言的普及,1983年,美国国家标准化组织(the American National Standards Institute,ANSI)为此成立了一个专门的委员会,其宗旨是在保持C语言原有精髓的前提下,定义一种“无二意性的且与机器无关的C语言”,于是产生了针对C语言的ANSI标准,即ANSI C。该标准明确了原先C语言中模糊的概念,规范了标准的库函数、内存管理、字符串操作等内容。随后,在1990年,国际标准化组织(International Standardization Organization, ISO)接受ANSI C为国际标准C语言,即ISOC(ISO9899-1990)。正是由于上述的原因,我们选择C语言作为介绍程序设计的入门语言。
根据我近20年计算机教学工作的观察,市场上很多关于C语言程序设计的书籍,或是从抽象枯燥的语法开始,或是使用晦涩的数学问题作为实例,这在某种程度上偏离了程序设计的核心,不仅容易挫伤初学者学习程序设计的信心,而且也会造成初学者对程序设计缺乏兴趣。因此,需要一本初学者容易掌握的、描述程序设计概念和方法的书籍。经过多年的教学实践,笔者在总结C语言授课经验的基础上,借鉴过去用过的多本的C语言书籍的优点,根据讲稿整理并编写了这本《程序设计入门——C语言》。
作为一本入门教材,本书力求做到深入浅出、通俗易懂、易学易用。每个章节的结构层次清晰:首先提出本章节的重点、难点;其次给出学习之后应该达到的目标;第三是具体知识的解读,包括实例描述、编程风格以及编程经验等,而实例描述将从问题的提出、分析、数据结构描述、算法设计逐渐展开,直到给出完整的代码或主要代码;第四,对本章的知识进行总结;最后,提供练习和“实训”题目,每章后面的练习内容全面,形式多样,包含“问答题”、“选择题”、“判断题”、“分析程序输出结果题”、“编程题”和“实训题”等。通过这些练习,学生可以及时地检查和测试对本章内容学习和掌握的情况,教师也可以从中选出一些题目留为作业。
高质量的软件开发需要程序员具有较高的编程素质,这方面,国内计算机教育与实践相对薄弱,很多程序员虽然能熟练地掌握编程技术,但是缺乏强烈的软件工程与质量意识,具体表现是,在实践中不注重软件开发最基本的三个要素:编程风格、出错处理以及算法复杂度分析。而这些要素是一个程序员应具备的基本素质,是应该在早期学习中潜移默化地接受并在实践中运用的。通常的软件设计课程也往往忽视这部分教育,这也是本书所关心的内容之一。
本书主要由四大模块组成。第一模块是“入门”部分,包括第1章、第2章,是程序设计学习的入门阶段,这部分将简单介绍个人计算机系统软、硬件环境,并通过简单的C语言程序讲述程序结构、语言集成编程环境,通过对简单操作界面的设计,学习如何设计友好的人机界面接口,初步了解程序设计的概念和培养学生上机操作、调试程序的能力,使学生对程序设计初步建立起整体认识。模块二“循序渐进”,是程序设计基础部分,包括第3章、第4章。学习各种数据类型以及结构化流程设计的典型应用。模块三“提高”,开始介绍相对复杂的数组类型、函数内容,培养模块化程序设计的思想,使学生初步了解软件工程概念,具备程序设计的基本能力;同时还讲解用指针和结构体类型进行数据处理的程序设计,学习文件结构设计,训练对外部存储器数据的访问并学习位操作的实际应用。通过学习,可以更好地培养学生综合分析问题、解决问题的能力。本模块包括第5章至第10章。模块四“综合应用”,提供5个综合性的实训练习题目,并附源代码,进行系统练习。另外,附录中也包括初学者在编程中常见的错误并给出相应的例子与分析等内容。
本书由陈鹤年任主编并编写第1章至第7章和模块四(综合实训),马杰老师为副主编,编写第8章至第10章三章和附录,全书由陈鹤年统稿和定稿,并由海南软件职业技术学院院长魏应彬教授(博士)审稿。
在编写过程中得到卢彧高工,季文天主任,王成老师,何新江老师,王晶老师的大力支持,在此表示真诚致谢!
本书的读者对象主要为大学一年级新生、程序设计爱好者。
书中不妥之处在所难免,敬请读者批评指正。
编 者
2008年10月2日