本书的作者是美国程序设计教材的名家,他们的作品多为美国各著名大学的指定教材。本书是已出版的《C++大学教程》的配套实验指导书,提供了初中级C++编程概念的全面练习,其中还包含了大量的实验室作业。本书侧重于《C++大学教程》的第1章到第15章。本指导书的每一章都对应于教材的相应章节,并且每一章都分为三个部分:课前预备、实验室练习和课后作业。学生可将课堂里学到的知识应用到经过精心设计的实验室作业中,从而可以加强学生对课堂知识的理解。\r\n 本书适合于高等院校教授和学习C++程序设计的广大教师和学生。
第1章 计算机与C++编程入门 \r\n\r\n1.1 作业检查表 \r\n1.2 课前预备 \r\n1.3 实验室练习 \r\n1.4 课后作业 \r\n\r\n第2章 控制结构 \r\n\r\n2.1 作业检查表 \r\n2.2 课前预备 \r\n2.3 实验室练习 \r\n2.4 课后作业 \r\n\r\n第3章 函数 \r\n\r\n3.1 作业检查表 \r\n3.2 课前预备 \r\n3.3 实验室练习\r\n3.4 课后作业\r\n\r\n第4章 数组 \r\n\r\n4.1 作业检查表 \r\n4.2 课前预备 \r\n4.3 实验室练习\r\n4.4 课后作业 \r\n\r\n第5章 指针与字符串 \r\n\r\n5.1 作业检查表 \r\n5.2 课前预备 \r\n5.3 实验室练习\r\n5.4 课后作业\r\n\r\n第6章 类与数据抽象 \r\n\r\n6.1 作业检查表 \r\n6.2 课前预备 \r\n6.3 实验室练习\r\n6.4 课后作业 \r\n\r\n第7章 类:第二部分 \r\n\r\n7.1 作业检查表 \r\n7.2 课前预备 \r\n7.3 实验室练习 \r\n7.4 课后作业\r\n\r\n第8章 运算符重载 \r\n\r\n8.1 作业检查表 \r\n8.2 课前预备 \r\n8.3 实验室练习 \r\n8.4 课后作业\r\n\r\n第9章 继承 \r\n\r\n9.1 作业检查表 \r\n9.2 课前预备 \r\n9.3 实验室练习\r\n9.4 课后作业\r\n\r\n第10章 虚函数与多态性\r\n\r\n10.1 作业检查表\r\n10.2 课前预备\r\n10.3 实验室练习 \r\n10.4 课后作业 \r\n\r\n第11章 C++的流输入与流输出 \r\n\r\n11.1 作业检查表 \r\n11.2 课前预备 \r\n11.3 实验室练习\r\n11.4 课后作业 \r\n\r\n第12章 模板 \r\n\r\n12.1 作业检查表 \r\n12.2 课前预备 \r\n12.3 实验室练习 \r\n12.4 课后作业 \r\n\r\n第13章 异常处理 \r\n\r\n13.1 作业检查表 \r\n13.2 课前预备 \r\n13.3 实验室练习 \r\n13.4 课后作业 \r\n\r\n第14章 文件处理 \r\n\r\n14.1 作业检查表 \r\n14.2 课前预备 \r\n14.3 实验室练习\r\n14.4 课后作业 \r\n\r\n第15章 数据结构 \r\n\r\n15.1 作业检查表 \r\n15.2 课前预备 \r\n15.3 实验室练习\r\n15.4 课后作业
许多大学现在都是采用实验室环境来讲授编程语言课程。本书是已出版的《C++大学教程》及其配套光盘的补充材料,其中包含了大量的实验室作业,可以加强学生对于课堂知识的理解。如果需要更新这里的实验室材料,获取Deitel & Associates公司的出版材料和服务,请在www.deitel.com注册以得到The Deitel Buzz新闻邮件。
封闭实验室
目前有两种计算机科学实验室课程——封闭实验室和开放实验室。通常,封闭实验室是由教师指导的。由于学生可将课堂里学到的知识应用到经过精心设计的实验室作业中,因此,封闭实验室为学生提供了一种优秀的学习环境。此外,教师通过了解学生在实验室的能力,可以更好地衡量学生对于知识的理解。开放实验室没有固定的时间,学生并不在教师的指导下完成实验室作业,因此,我们认为开放实验室并不能最大限度地增强学生的学习实践能力。本实验室手册可以用于开放实验室和自学过程,也可以用于封闭实验室课程中,每部分大约需要两个小时。
关于本书
本书侧重于《C++大学教程》的第1章到第15章。1 本书的每一章都对应于教材的相应章节,并且每一章都分为三个部分:课前预备、实验室练习和课后作业。2每章都包括以下教学内容:
目标
这部分的主要目的是通过强调章节涵盖内容的主题介绍本章的实验室教程。完成实验室作业后,学生可以回顾一下这些目标以确定是否掌握了应学的知识。
作业检查表
每一章中都包含一个作业检查表,学生可以在此标记教师布置的作业。
课前预备
学生在学习完《C++大学教程》的每一章后,需要完成“课前预备”的内容。“课前预备”测试了学生对于教材内容的理解情况,让学生对实验室课程里的编程练习做好准备(这些内容可以由教师处理是在实验室课程开始前完成还是在实验室课程中完成)。这些练习主要侧重于一些重要的术语和编程概念,对学生的自我检查来说是非常好的。在本书中包含了以下类型的课前预备:
134个匹配练习(所有章节)
在匹配练习中,一列是重要的编程术语,一列是对术语的解释。要求学生将术语与相应的解释进行匹配。这些练习可以测试学生是否理解了重要术语的含义。
130个填空练习
填空练习中的句子都是不完整的,要求学生填写遗漏的关键词。与匹配练习一样,这些练习是为了确定学生是否理解了重要术语的含义。
73个简答题
简答题测试学生对新概念的理解。要求学生用两三句话来回答提出的问题。
56个程序输出练习
阅读代码的能力对于编写代码来说是非常重要的。程序输出练习提供了一些简短的代码段,让学生确定代码的输出结果(不允许运行程序)。这些练习可以加强学生对程序控制和编程概念的理解。
72个改正代码练习
调试与错误检测是掌握计算机编程的一项非常重要同时也是非常困难的技巧。这些改正代码练习给学生提供了大量的简短的代码段,其中包含一个或多个错误。要求学生能够在不编译程序的情况下对这些错误进行识别和改正。
实验室练习
每一章中最重要的部分就是“实验室练习”。这些练习是为了教授学生如何应用在《C++大学教程》中学习的内容,以及如何编写C++程序。每次的实验室课程中都包含一个或多个实验室练习和一个调试练习。“实验室练习”包含如下内容:
148个实验室目标
实验室目标强调了《C++大学教程》中相应章节的概念,实验室练习正是围绕着实验室目标进行的。罗列这些目标,可以让学生明白他们是否已经达到了这些要求。这些目标可以让学生建立信心,是促进学习的动力。
30个问题解释
这些解释包含了程序的详细说明,并说明了程序应当如何编写。许多问题都摘自《C++大学教程》的练习。每个问题都已经在我们公司的实验室环境下进行了仔细的测试,并通过了全球使用该教材的成百所大学的教师和学生的测试。
33个实例输出
在每项实验室练习中,都包含着一个或多个实例输出。这些实例输出阐明了程序的行为。输出的信息进一步说明了问题解释中的内容,并对学生编写程序提供了很好的帮助。学生还可以用这些输出来确保其程序是否能正确运行。
31个程序模板
程序模板中的C++程序删除了关键的几行,并用有关欠缺代码的注释替代了。这些模板给学生提供了一个起点,让他们在此编程,并深入思考解决问题的途径。程序模板可以在www.deitel.com和www.prenhall.com/deitel处下载。
125个问题解决技巧
问题解决技巧提供了一些学生在实验室练习中会用到的小窍门。 这些技巧强调了学生在进行实验室练习时应考虑的关键问题。
100个强化练习
强化练习是让学生对解决方案模板进行修改。这些练习旨在加深学生对C++的理解,并能理解如何解决一个相近的程序设计问题,或者是程序如何应用到另一个解决方案中。还可以让学生解释自己的解决方案,以确定他们真正理解了关键的编程概念。
13个调试练习
这些极富挑战性的调试练习的目的是警告学生在编程中可能会遇到的错误类型。每项练习中的代码段都包含有语法错误以及/或者逻辑错误。在实验室课程中,学生可以对这些程序进行编译和执行。调试练习中的源代码文件可以在www.deitel.com和www.prenhall.com/deitel处下载。
课后作业
课后作业是让学生在实验室课程结束后完成的。那些能迅速完成实验室课程的学生,在自学时会发现这些课后作业非常有用。教师可以布置这些作业来加强学生对关键概念的理解,或者给学生提供更多的编程实践练习。这些作业可以测试学生对其在实验室课程中所掌握知识的理解,并帮助学生将学到的知识运用到编程中去。这一部分有两种编程作业:代码练习和编程练习。
94个代码练习
代码练习非常短,作为在完成课前预备和实验室练习后的复习使用。这些练习将概念从书本中独立出来,让学生编写程序或程序片断来说明那些概念。
30个编程练习
编程练习是让学生将课堂学到的知识真正运用到实际的程序编写过程中。这里提供了技巧、实例输出和伪代码来帮助学生解决问题。如果学生能成功完成一章的编程作业,那么就说明他们已经掌握了本章的内容。大多数编程练习都取自《C++大学教程》的练习题。
《C++大学教程》教辅材料
用《C++大学教程》作为教材时,教师有许多教辅材料可用。“The Instructors Manual CD”中包含了大量的课后练习的答案(注意,请不要向我们索取教师手册。教师手册的发行严格限制在大学里教授这门课的教师当中。教师们只能从Prentice Hall代表那里获取答案手册)。“测验试题”可以用来做测验或者考试。此外,我们还提供了PowerPoint ń沧╳ww.prenhall.com/deitel)材料,其中包含了书中所有的代码和图示。但我们还是要鼓励教师自己根据需要来制作幻灯片。Prentice Hall提供了一个Web站点(www.prenhall.com/deitel),其中包含了许多教师和学生都可以用的资源。对教师而言,此Web站点包含了课程规划用的课程提纲,这些提纲可以直接链接到PowerPoint讲座材料中。对于学生而言,这个Web站点提供了一些章节的目标、判断对错练习和答案、章节重点及参考材料。
《C++大学教程》及其配套光盘
《C++大学教程》一书配套有多媒体光盘,具有很好的学习和参考价值。
光盘中首先是作者对多媒体教室的简介。课本中的示例程序在此多媒体教室中完全真实起来。如果用户想查看程序并执行,只需要单击图标就可以了。在这里可以立即看到程序的输出结果。如果想修改程序并看一看改动的效果,只需要单击一下磁盘图标就可以将光盘中的源代码复制到自己的目录中,从而实现编辑文件、重新编译程序、测试改动版本的代码的目的。单击音频按钮,将听到一位作者对程序的讲解。
多媒体教室还提供了导航工具,其中包含有超级链接等。多媒体教室是基于浏览器开发的,所以可以记下用户最近访问过的章节,允许用户在这些章节之间向前浏览或向后浏览。大量的索引均以超级链接的形式链接到相应的文本。此外,当使用“查找”功能时,只要键入关键词,多媒体教室就可以在全文中定位该关键词的位置。目录也是与内容链接的,只要单击目录的名称,就可以立即转到该章的内容。教师告诉我们,学生非常喜爱多媒体教室,与单纯用教材讲课对比,学生投入了更多的时间在该课程上,而且也掌握了更多的知识。
最后,我们将真诚地感谢您对本实验室手册提出的建议、批评和改正。根据这些反馈意见,我们将定期更新此书。请按如下地址与我们联系:
deitel@deitel.com
我们将对您的来信做出迅速的答复。祝大家好运!
Dr Harvey M. Deitel
Paul J. Deitel
Tem R. Nieto