
本书是与谭浩强所著的《C程序设计教程(第2版)》(清华大学出版社出版)配合使用的参考书,全书可分四个部分。第一部分为《C程序设计教程(第2版)》习题与参考解答,包括了该书各章的全部习题,对全部编程习题都给出了参考解答,包括114个程序;第二部分为常见错误分析和程序调试;第三部分为C语言上机指南,详细介绍了在Visual C++ 6.0集成环境下编辑、编译、调试和运行程序的方法;第四部分为上机实验,提供了学习本课程应当进行的12个实验。
本书内容丰富、实用性强,是学习C语言的一本好参考书。本书不仅可以作为《C程序设计教程(第2版)》的参考书,而且可以作为任何C语言教材的参考书;既适于高等学校师生使用,也可供报考计算机等级考试者和其他自学者参考。
C语言是国内外广泛使用的计算机语言。许多高校都开设了“C语言程序设计”课程。作者于1991年编写了《C程序设计》,由清华大学出版社出版,该书出版后,受到了广大读者的欢迎,大家普遍认为该书概念清晰、叙述详尽、例题丰富、深入浅出、通俗易懂,大多数高校选其作为教材。至2012年年底该书已先后修订了3次,出了4版,重印120多次,累计发行1200多万册,为国内外同类书之首。
由于全国各地区、各类学校情况不尽相同,对C语言的教学要求学时数也有所差别。因此,作者除了编写出版《C程序设计》外,还针对部分学时较少的学校的情况,于2007年编写出版《C程序设计教程》一书,适当减少内容,紧扣基本要求,突出重点。同时编写出版《C程序设计教程学习辅导》一书。2013年年初,作者对《C程序设计教程》一书进行了修订,出版了《C程序设计教程(第2版)》,同时也对《C程序设计教程学习辅导》进行了修订,出版了《C程序设计教程学习辅导(第2版)》,即本书。
本书包括4个部分。
第一部分是“《C程序设计教程(第2版)》习题与参考解答”。在这一部分中包括了《C程序设计教程(第2版)》一书的全部习题,并提供了参考解答。除对其中少数概念问答题,由于能在教材中直接找到答案,不另给出答案外,对所有编程题一律给出参考解答,包括程序清单和运行结果。对于相对简单的问题,只给出程序清单和运行结果,不作详细说明,以便给读者留下思考的空间。对于一些比较复杂的问题还对算法进行了详细的分析介绍,给出流程图,并在程序中加注释以便于读者理解。对少数难度较大的题目(如链表的插入、删除等)还作了比较详细的文字说明。对有些题目,我们给出了两种参考解答,供读者参考和比较,以启发思路。全部程序都在Visual C++ 6.0环境下调试通过。
本书提供的114个不同类型、不同难度的题目,可以作为读者学习《C程序设计教程(第2版)》的补充材料。希望教师和同学们能善于利用这部分内容。教师可以根据教学要求和学生的情况,从习题中指定学生必须完成若干题目,目的是希望通过完成这些习题巩固消化教材中的内容,同时能帮助读者举一反三,深入思考。
习题中包括了不少有价值的、适用于教学的典型问题。由于篇幅和课时的限制,在教材和讲授中不可能介绍很多例子,只能介绍一些典型的例题。教师可以从习题中选一些,作为补充例题在课堂上讲授。对于一般读者,要求他们全部完成这些题目是困难的,但是可以提倡他们直接阅读参考解答,这对于开阔眼界,丰富知识,理解不同的程序,了解有关算法,掌握编程思路,是大有裨益的。对C程序设计有兴趣、有基础的读者,最好能多选一些题目独立完成编程,对提高编程水平会有很大的帮助。有人说: 如果能独立完成这些题目的编程,学习C语言就基本过关了。
应该说明,本书给出的程序并非是唯一正确的解答,甚至不一定是最佳的一种。对同一个题目可以编出多种程序,我们给出的只是其中的一种或两种,而且程序尽可能便于初学者容易理解,不一定直接搬用于专业的程序设计中。读者在使用本书时,千万不要照抄照搬,读者完全可以编写出更好、更专业的程序。
第二部分是“常见错误分析和程序调试”。作者根据多年教学经验,总结了学生在编写程序时常出现的问题,以提醒读者少犯类似错误。此外,介绍了调试程序的知识和方法,为上机实验打下基础。
第三部分是“C语言上机指南”。介绍了目前常用的Visual C++ 6.0集成环境下的上机方法,使读者上机练习有所遵循。
第四部分是“上机实验”。在这部分中提出了上机实验的要求,介绍了程序调试和测试的初步知识,并且安排了12个实验,便于进行实验教学。
本书不仅可以作为《C程序设计教程(第2版)》的参考书,而且可以作为任何C语言教材的参考书;既适用于高等学校教学,也可供报考计算机等级考试者和其他自学者参考。
本书难免会有错误和不足之处,作者希望得到广大读者的指正。
2013年7月于清华园
第一部分《C程序设计教程(第2版)》习题与参考解答
第1章程序设计和C语言3
第2章最简单的C程序设计——顺序程序设计8
第3章选择结构程序设计16
第4章循环结构程序设计26
第5章利用数组处理批量数据43
第6章利用函数进行模块化程序设计65
第7章善于使用指针91
第8章根据需要创建数据类型115
第9章利用文件保存数据148
第二部分常见错误分析和程序调试
第10章常见错误分析171第11章程序的调试与测试18711.1程序的调试187
11.2程序错误的类型189
11.3程序的测试191
第三部分C语言上机指南
第12章Visual C++ 的上机操作19912.1Visual C++的安装和启动199
12.2输入和编辑源程序200
12.2.1新建一个C源程序的方法200
12.2.2打开一个已有的程序202
12.2.3通过已有的程序建立一个新程序的方法202
12.3编译、连接和运行203
12.3.1程序的编译203
12.3.2程序的调试204
12.3.3程序的连接206
12.3.4程序的执行207
12.4建立和运行包含多个文件的程序的方法208
12.4.1由用户建立项目工作区和项目文件208
12.4.2用户只建立项目文件213
第四部分上 机 实 验
第13章实验指导21713.1上机实验的目的217
13.2上机实验前的准备工作218
13.3上机实验的步骤218
13.4实验报告219
13.5实验内容安排的原则219
第14章实验安排220
14.1实验1C程序的运行环境和运行C程序的方法220
14.2实验2最简单的C程序设计——顺序程序设计222
14.3实验3选择结构程序设计224
14.4实验4循环结构程序设计225
14.5实验5利用数组(一)226
14.6实验6利用数组(二)227
14.7实验7函数调用(一)228
14.8实验8函数调用(二)229
14.9实验9善用指针(一)230
14.10实验10善用指针(二)231
14.11实验11使用结构体232
14.12实验12文件操作233
参考文献234