基本信息
内容简介
计算机书籍
《C程序设计(第四版)学习辅导》是与谭浩强所著的《C程序设计(第四版)》(清华大学出版社出版)配合使用的参考用书。 共分4个部分,第1部分是《C程序设计(第四版)》一书的习题和参考解答,包括了该书各章的全部习题,对全部编程习题都给出了参考解答,共计132个程序;第2部分是深入学习C程序设计,包括预处理指令、位运算和C程序案例;第3部分是上机指南,详细介绍了Visual C++ 6.0集成环境下编辑、编译、调试和运行程序的方法;第4部分是上机实验指导,包括程序的调试与测试、实验的目的与要求,并提供了本课程12个实验。
《C程序设计(第四版)学习辅导》内容丰富、实用性强,是学习C语言的一本好参考书,不仅可以作为《C程序设计(第四版)》的配套教材,而且可以作为任何C语言教材的参考书;既适合高等学校师生使用,也可供报考各类计算机考试者和其他自学者参考。
目录
第1部分 《C程序设计(第四版)》习题和参考解答
第1章 程序设计和C语言1
第2章 算法--程序的灵魂4
第3章 最简单的C程序设计--顺序程序设计14
第4章 选择结构程序设计24
第5章 循环结构程序设计37
第6章 利用数组处理批量数据54
第7章 用函数实现模块化程序设计74
第8章 善于利用指针99
第9章 用户自己建立数据类型128
第10章 对文件的输入输出159
第2部分 深入学好C程序设计
第11章 预处理指令17711.1 宏定义178
11.1.1 不带参数的宏定义178
11.1.2 带参数的宏定义181
11.2 “文件包含”处理186
11.3 条件编译189
第12章 位运算193
12.1 位运算和位运算符193
前言
根据发展的需要,作者于2010年出版《C程序设计(第四版)》,为了配合该教材的教学,同时编写了这本《C程序设计(第四版)学习辅导》一书。
本书包括4个部分。
第1部分是“《C程序设计(第四版)》习题和参考解答”。在这一部分中包括了清华大学出版社出版的《C程序设计(第四版)》一书的全部习题。其中有些题的难度高于书中的例题,目的是使学生不满足于已学过的内容,而要举一反三,善于发展已有知识,提倡创新精神,培养解决问题的能力。希望教师能指定学生完成各章中有一定难度的习题。希望学生能尽量多做习题,以提高自己的水平。
为了方便读者,本书提供了参考解答。除对其中少数概念问答题,由于能在教材中直接找到答案,为节省篇幅本书不另给出答案外,对所有编程题一律给出参考解答,包括程序代码和运行结果,对于比较难的习题,除了给出程序(程序中加了注释)外,还给出N-S流程图,并作了比较详细的说明,以便于读者理解。对于相对简单的问题,只给出程序代码和运行结果,不作详细说明,以便给读者留下思考的空间。对有些题目,我们给出了两种参考答案,供读者参考和比较,以启发思路。
在这部分中提供了132个不同类型、不同难度的程序,全部程序都在Visual C++ 6.0环境下调试通过。由于篇幅和课时的限制,在教材和讲授中不可能介绍很多例子,只能介绍一些典型的例题。本书中给出的程序实际上是对《C程序设计(第四版)》一书例题的补充,希望读者能充分利用它。即使没有时间自己做出全部习题,如果能把全部习题的参考解答都看一遍,而且都能看懂,理解不同程序的思路,也会大有裨益,能扩大眼界,丰富知识。教师也可以挑选一些习题解答在课堂上讲授,作为补充例题,可以说:如果能独立完成这些题目的编程,学习C语言就基本过关了。
应该说明,本书给出的程序并非是唯一正确的解答,甚至不一定是最佳的一种。对同一个题目可以编出多种程序,我们给出的只是其中的一种。读者在使用本书时,千万不要照抄照搬,我们只是提供了一种参考方案,读者完全可以编写出更好的程序。
第2部分是“深入学好C程序设计”。包括“预处理指令”、“位运算”和“C程序案例”,这是对教材内容的补充。
“预处理指令”。详细地介绍预处理指令,使读者对它有系统的了解并善于利用它们,以提高编程效率。
“位运算”。位运算是C语言区别于其他高级语言的一个重要特点。C语言能对“位”进行操作,使得C具有比较接近机器的特点。在编写系统软件和数据采集、检测与控制中往往需要用到位运算。信息类专业的学生需要学习这方面的知识,因此,本书专门列出一章,介绍位运算的基本知识,供需要者选学,信息类专业可以把它列入教学内容。
"C程序案例”。在这一章中介绍了3个实用程序。可以帮助读者把学习到的C程序设计的知识用于解决实际问题,能根据需要编写应用程序。在教材中,为了便于课堂教学,例题程序的规模一般都不大。在学完各章内容之后,需要综合应用已学过的知识,编写一些应用程序,同时提高编程能力。因此在本书中专门组织“C程序案例”一章,供读者阅读参考。这些案例很有实用价值。建议读者在学完教材后,仔细阅读这几个案例,对于提高编程能力会有很大的帮助。.
第3部分是“C语言程序上机指南”。介绍了Visual C++ 6.0集成环境下的上机方法,使读者上机练习有所遵循。考虑到篇幅,不再介绍其他编译系统。如果读者使用Turbo C++ 3.0,可以参考作者编著的《C程序设计(第三版) 习题解答与上机指导》一书。
第4部分是“上机实践指导”。在这部分中介绍了程序调试和测试的初步知识,提出了上机实验的目的与要求,并且安排了12个实验,供各校安排实验时参考。
希望读者使能充分利用本书提供的资源,提高C程序设计的教学质量。
本书不仅可以作为《C程序设计(第四版) 》的配套教材,而且可以作为任何C语言教材的参考书;既适用于高等学校教学,也可供报考各种计算机考试者和其他自学者参考。
本书的第13章由林小茶副教授编写。薜淑斌、秦建中、谭亦峰高级工程师参加了本书部分调试程序和整理材料的工作。
本书难免会有错误和不足之处,作者愿得到广大读者的指正。
谭浩强2010年3月
序言
20多年来,全国高等院校计算机基础教育研究会和全国高校从事计算机基础教育的老师始终不渝地在这片未被开垦的土地上辛勤工作,深入探索,努力开拓,积累了丰富的经验,初步形成了一套行之有效的课程体系和教学理念。20年来高等院校计算机基础教育的发展经历了3个阶段:20世纪80年代是初创阶段,带有扫盲的性质,多数学校只开设一门入门课程;20世纪90年代是规范阶段,在全国范围内形成了按3个层次进行教学的课程体系;教学的广度和深度都有所发展;进入21世纪,开始了深化提高的第3阶段,需要在原有基础上再上一个新台阶。
在计算机基础教育的新阶段,要充分认识到计算机基础教育面临的挑战。
(1)在世界范围内信息技术以空前的速度迅猛发展,新的技术和新的方法层出不穷,要求高等院校计算机基础教育必须跟上信息技术发展的潮流,大力更新教学内容,用信息术的新成就武装当今的大学生。
(2)我国国民经济现在处于持续快速稳定发展阶段,需要大力发展信息产业,加快经济与社会信息化的进程,这就迫切需要大批既熟悉本领域业务,又能熟练使用计算机,并能将信息技术应用于本领域的新型专门人才。因此需要大力提高高校计算机基础教育的水平,培养出数以百万计的计算机应用人才。
(3)21世纪,信息技术教育在我国中小学中全面开展,计算机教育的起点从大学下移到中小学。水涨船高,这样也为提高大学的计算机教育水平创造了十分有利的条件。
迎接21世纪的挑战,大力提高我国高等学校计算机基础教育的水平,培养出符合信息时代要求的人才,已成为广大计算机教育工作者的神圣使命和光荣职责。全国高等院校计算机基础教育研究会和清华大学出版社于2002年联合成立了“中国高等院校计算机基础教育改革课题研究组”,集中了一批长期在高校计算机基础教育领域从事教学和研究的专家、教授,经过深入调查研究,广泛征求意见,反复讨论修改,提出了高校计算机基础教育改革思路和课程方案,并于2004年7月发布了<中国高等院校计算机基础教育课程体系2004》(简称CFC 2004)。国内知名专家和从事计算机基础教育工作的广大教师一致认为CFC 2004提出了一个既体现先进性又切合实际的思路和解决方案,该研究成果具有开创性、针对性、前瞻性和可操作性,对发展我国高等院校的计算机基础教育具有重要的指导作用。根据近年来计算机基础教育的发展,课题研究组于2006年和2008年又发布了《中国高等院校计算机基础教育课程体系2006》(简称CFC 2006)和中国高等院校计算机基础教育课程体系2008)(简称CFC 2008),由清华大学出版社出版。
为了实现CFC提出的要求,必须有一批与之配套的教材。教材是实现教育思想和教学要求的重要保证,是教学改革中的一项重要的基本建设。如果没有好的教材,提高教学质量只是一句空话。要写好一本教材是不容易的,不仅需要掌握有关的科学技术知识,而且要熟悉自己工作的对象、研究读者的认识规律、善于组织教材内容、具有较好的文字功底,还需要学习一点教育学和心理学的知识等。一本好的计算机基础教材应当具备以下5个要素:
(1)定位准确。要明确读者对象,要有的放矢,不要不问对象,提笔就写。
(Z)内容先进。要能反映计算机科学技术的新成果、新趋势。
(3)取舍合理。要做到”该有的有,不该有的没有”,不要包罗万象、贪多求全,不应把教材写成手册。
(4)体系得当。要针对非计算机专业学生的特点,精心设计教材体系,不仅使教材体现科学性和先进性,还要注意循序渐进、降低台阶、分散难点,使学生易于理解。
(5)风格鲜明。要用通俗易懂的方法和语言叙述复杂的概念。善于运用形象思维,深入浅出,引人入胜。
为了推动各高校的教学,我们愿意与全国各地区、各学校的专家和老师共同奋斗,编写和出版一批具有中国特色的、符合非计算机专业学生特点的、受广大读者欢迎的优秀教材。为此,我们成立了”中国高等院校计算机基础教育课程体系规划教材”编审委员会,全面指导本套教材的编写工作。
这套教材具有以下几个特点:
(1)全面体现CFC的思路和课程要求。可以说,本套教材是CFC的具体化。
(2)教材内容体现了信息技术发展的趋势。由于信息技术发展迅速,教材需要不断更新内容,推陈出新。本套教材力求反映信息技术领域中新的发展、新的应用。
(3)按照非计算机专业学生的特点构建课程内容和教材体系,强调面向应用,注重培养应用能力,针对多数学生的认知规律,尽量采用通俗易懂的方法说明复杂的概念,使学生易于学习。
(4)考虑到教学对象不同,本套教材包括了各方面所需要的教材(重点课程和一般课程;必修课和选修课;理论课和实践课),供不同学校、不同专业的学生选用。
(5)本套教材的作者都有较高的学术造诣,有丰富的计算机基础教育的经验,在教材中体现了研究会所倡导的思路和风格,因而符合教学实践,便于采用。