图书前言

第二版前言

《C++程序设计教程(第二版)实验指导》是主教材《C++程序设计教程(第二版)》的配套书。由于第二版主教材对第一版作了根本性的改版,所以对应的实验指导的第二版也基本抛弃了第一版的成书结构,无论从内容体系、结构布局、实验环境、课程目标,还是从所描述的实验细节上都作了根本性的改进。

该书从题目设计,测试数据的构造到难易的把握、整体的布局,都是围绕C++程序设计课程教学来安排的,因而书中实验的设计自成一个课程知识体系。这有利于让课堂知识的讲解朝着问题驱动的教学模式迈进,以更好地进行师生互动,提高教学效果。

本书共分三个部分,每一部分均由“实验概述”、“样板实验”、“实验内容”和“解题指导”四章构成。每个部分都包含了五个实验套题和一个阶段测验,以供教师和学生选择使用。其中每个部分都有实验要求、目标,列出了本部分实验的难度与特点,并提供样板实验。同时,除了阶段测验外,各套实验都提供了解题指导。

第一部分为入门编程,目的在于掌握C++程序设计的基本操作与编程的基本描述技能,以便展开比较有深度的编程分析与逻辑描述的思考。本部分是能否学到C++编程要领的关键,如果第一部分没有掌握,宁可重学,也千万不要跟读后面的内容,因为没有表达能力与调试经验,所从事的编程逻辑思考,恰似无缘之木、无源之水,虽努力撑持,最后也只能痛言放弃。

第二部分为基本编程,目的是掌握C++程序设计的基本方法,提高以编程来解决实际问题的能力。这部分内容学得是否到位,是能否成为一个真正程序员的分水岭。因为搞任何理论性研究,都离不开抽象思维、数学和算法思想。对科学研究来说,语言编程环境只不过是个具体的描述工具而已。另一方面,搞任何系统开发,都离不开对编程语言、编程工具、编程资源的了解,而这一切都与充分进行的编程实践密切相关。程序设计课程的后续课程《数据结构与算法》也正是为了强化这两个目的而开设的。

第三部分为设计与组织,它主要面向编程方法,让读者了解和掌握如何对程序进行合理的布局组织与结构划分。编程方法有多少,程序结构的形式就有多少,因此,学会了程序组织的不同形式,也就从实践环节上看透了各种编程方法的差异与联系,同时也熟悉了多文件结构的程序工程调试,实践过程化与对象化程序设计,实践面向对象程序设计及模板的设计,从而从抽象设计的角度,从分析问题的角度,从设计与代码描述一体化的角度,从系统实现的角度,来了解C++的语言描述能力,了解操作系统与语言系统的联系。

本书的目标是与主教材密切配合,让读者以自学提高为主,逐步具备自学编程的能力,即综合分析问题、解决问题的能力与操作编程技能的同步提高,以便能够独立研读算法理论和系统开发指导等书籍,辅之以网上讨论,专家点拨,最终实现自己的价值。

本书配有一个实验环境网站,内有一个题库,包含了书中第一部分和第二部分的全部实验。网站上具有判题功能,读者可以对应实验的题号,提交自己的代码,验证正确性;测试运行性能,看是否符合要求。同时,网站上还会不断进行一些课程实验,组织一些相关的上机考试,推出一些新的实验套题,并定期在清华大学出版社网站和C++课程教学网站http://kczy.zjut.edu.cn:8015(可由实验网站链接进入)上提供解答及相关的教学资料。

该C++实验网站是一个可以自由访问的实验提交系统,由屡获大学生程序设计竞赛佳绩的学生经过两个版本的更新而成型。值得一提的是,金天鹏和金启为同学为该系统做出了卓越的贡献。实验环境使用说明见附录C。

书中的例子,还有解答指导的样本代码,其风格与主教材保持一致。所有书中的代码都在Borland C++ Builder 6(简称BCB6)上通过了测试,在清华大学出版社网站http://www.tup.tsinghua.edu.cn上可以下载有关的样板实验代码。为了方便读者的学习,还同时提供另一套可以在VC6上运行通过的样板实验代码供读者下载。

书末附有BCB6的安装和简单操作使用介绍以及BCB6的错误信息解读。最后还介绍了实验教学系统OPS的使用说明。

在本书的写作过程中,得到了多方面的帮助。学校网络中心对实验教学系统OPS给予了多方关照,保证了其正常运行;教务处对C++课程教学建设也一直在关心和支持;甚至教育部计算机科学与技术专业教学指导分委员会指导下的2007年计算机专业核心课程C++程序设计教师研修班也在作者所在的浙江工业大学举办。作为国家“十一五”规划教材,本书出版之际,我们的C++程序设计课程已被评为省级精品课程,整个C++课程组都在课程建设和教材建设方面发挥着积极作用。

网评和论坛也给了我许多启示,甚至有些电子邮件直接就说是为了让我写出更好的书。因而所写的书,似乎出自大家的手。感谢为我提供资源,为我创造条件,让我静下心来的人们!在他们的关照、呵护和鼓励下,我的写作过程充满了灵感。好吧,再往前行,接着写下一本,努力满足读者的要求。

作者的电子邮件地址是:qianneng@mail.hz.zj.cn

钱  能    

2007年夏于杭州自在居

前    言

本书是《C++程序设计教程》的配套书,同时它也可单独作为学习C++的上机实验指导书。C++程序设计的环境有许多,这里选择了两种,分别是Borland(或TURBO)C++ 3.0 for DOS版和Borland(或TURBO)C++ 5.0 for Windows版。

其中,对Borland C++ 3.0的使用方法给予了较完整的介绍,并给出了编译和链接的错误信息中文解释。

书中根据C++程序设计教程的进度,安排了十个实验单元。每个单元都指出了实验目的和系列的实验题目。每个实验题目都给出基本要求和思考问题。个别实验列出了测试数据和选做项目。还根据需要,个别地方介绍了操作过程。最后还介绍了常用标准库函数的函数原型,并对有些复杂的函数适当展开介绍其使用方法。