计算机科学丛书:C++程序设计(附光盘) PDF下载 公众号 其他格式

手机扫码免费下载

纠错留言

#电子书截图

计算机科学丛书:C++程序设计(附光盘)截图

#电子书简介

第1章计算机、程序和C++语言简介
目标
回顾计算机、程序和操作系统的基础知识(1.2~1.4节)。
(可选)介绍二进制、十进制和十六进制(1.5节)。
了解C++语言的历史(1.6节)。
编写一个简单的C++程序(1.7节)。
了解C++程序开发周期(1.8节)。
(可选)使用Visual C++开发C++程序(1.9节)。
(可选)使用Dev-C++开发C++程序(1.10节)。
(可选)在Windows平台使用命令行工具开发C++程序(1.11节)。
(可选)在UNIX平台使用命令行工具开发C++程序(1.12节)。
1.1引言
我们使用字处理器撰写文档,使用浏览器畅游Internet,使用电子邮件程序在Internet上发送电子邮件。字处理器、浏览器和电子邮件程序都是在计算机上运行的软件,而软件是使用程序设计语言开发出来的,C++就是一种流行的而且功能十分强大的程序设计语言。大多数应用软件(如字处理器、浏览器和电子邮件程序)都是使用C++开发的。本书将带领读者学习使用C++这个功能强大的程序设计语言开发程序。
在正式进入学习之前,我们先来回顾一下计算机、程序及操作系统的基础知识,同时熟悉一下数制。如果你已经很熟悉CPU、内存、磁盘、操作系统以及程序设计语言等术语,可以跳过1.2-1.4节。还可略过1.5节,当遇到有关二进制数和十六进制数的问题时再查阅即可。
1.2什么是计算机
所谓计算机,就是一台能存储并处理数据的电子设备,它包含硬件(hardware)和软件(software)两部分。一般而言,计算机的硬件是我们可以看到的物理特征,而软件是不可见的指令,它控制硬件,使之完成特定的任务。所谓计算机程序设计,就是编写让计算机执行的指令。原则上,你无需了解计算机硬件,就可以学习程序设计语言,但如果对硬件知识有所了解的话,能帮助你更好地理解程序指令会产生什么效果。本节将概述计算机硬件的组成及各组成部件的功能。
译者序
前言
第一部分 程序设计基础
第1章 计算机、程序和C++语言简介
1.1 引言
1.2 什么是计算机
1.2.1 CPU
1.2.2 内存
1.2.3 外存储设备
1.2.4 输入输出设备
1.2.5 通信设备

1.3 程序
1.4 操作系统
1.4.1 控制和监视系统活动
1.4.2 分配和指派系统资源
1.4.3 任务调度

*1.5 数制
1.5.1 二进制数与十进制数之间的转换
1.5.2 十六进制数与十进制数之间的转换
1.5.3 二进制数与十六进制数之间的转换

1.6 C++语言的历史
1.7 一个简单的C++程序
1.8 C++程序开发周期
*1.9 使用Visual C++开发C++程序
1.9.1 起步
1.9.2 创建项目
1.9.3 创建C++程序
1.9.4 编译C++程序
1.9.5 运行C++程序

*1.10 使用Dev-C++开发C++程序
1.10.1 起步
1.10.2 创建程序
1.10.3 编译C++程序
1.10.4 运行C++程序
*1.11 用Windows命令行方式开发C++程序
*1.12 在UNIX平台上开发C++程序
小结
习题
程序设计练习

第2章 基本数据类型和运算
2.1 引言
2.2 编写简单的程序
2.3 从键盘读取输入
2.4 省略std::前缀
2.5 标识符
2.6 变量
2.7 赋值语句和赋值表达式
2.8 命名常量
2.9 数值数据类型及其运算
2.9.1 数值文字常量
2.9.2 数值运算符
2.9.3 算术表达式
2.9.4 简写运算符

2.10 数值类型转换
2.11 字符数据类型及其运算
2.11.1 转义序列表示特殊符号
2.11.2 char型和数值型之间的转换

2.12 实例研究
2.12.1 实例:计算贷款偿还金额
2.12.2 实例:计算给定金额的货币数量
2.12.3 实例:显示当前时间

2.13 程序设计风格和文档
2.13.1 适当的注释和注释风格
2.13.2 变量和常量的命名
2.13.3 恰当的缩进和空白

2.14 程序设计错误
2.14.1 语法错误
2.14.2 运行时错误
2.14.3 逻辑错误
2.15 调试
小结
习题
程序设计练习

第3章 分支语句
3.1 引言
3.2 bool类型
3.3 if语句
3.4 实例:猜生日
3.5 逻辑运算符
3.6 if . . . else语句
3.7 嵌套的if语句
3.8 实例:计算税款
3.9 实例:一个数学学习工具
3.10 switch语句
3.11 条件表达式
3.12 输出格式控制
3.13 运算符优先级和结合律
3.14 枚举类型
小结
习题
程序设计练习
第4章 循环
第5章 函数
第6章 数组
第7章 指针和C字符串
第8章 递归

第二部分 面向对象程序设计
第9章 对象和类
第10章 对象和类的更多内容
第11章 继承和多态
第12章 文件输入输出
第13章 运算符重载
第14章 异常处理

第三部分 数据结构
第15章 模板
第16章 链表、栈和队列
第17章 树、堆和优先队列
第18章 算法效率和排序
第19章 STL容器
第20章 STL算法
附录
附录A C++关键字
附录B ASCII字符集
附录C 运算符优先级表
附录D 位运算
本书保持了Liang博士系列丛书中一贯的标志性的教与学的哲学:以实例教,由实践学。通过使用他所提出的已经经过实践检验的“基础先行”的方法,Liang博士在本书中通过大量实例阐明了基本的C++特性,使得学生可以通过实践来更有效地进行学习。 在引入面向对象程序设计思想之前,Liang博士使用清晰简明的语言介绍了C++语言的基础知识和基本的程序设计技术,如循环、逐步求精等。这些概念都是使用简短且吸引人的实例来进行阐明的。他还在实例研究中给出了一些较大规模的实例,并附以整体的分析讨论和详细的逐行注解。 本书首先帮助学生循序渐进地学习所有必需和重要的基本概念,然后再进入到面向对象程序设计方法的学习,最终掌握构建具有异常处理和输入输出功能的有意义的应用程序的方法。贯穿全书的实例和练习都以问题求解为中心,力图培养学生开发可重用组件并用之创建实际项目的意识。
本书特点
●大量的表格和图示。
●较早地介绍编写程序的方法——从第2章开始,学生就能编写简短、有趣的游戏程序。
●使用UML描述类。
●大量的补充资料——安装和配置C++开发环境、IDE简明教程、补充的C++特性等,这些补充资料便于教师设计自己的课程内容。
http://img10.360buyimg.com/N0/26356/305501ca-1359-40e6-9f7c-e3c5af68f8a5.jpg
设计高效稳定、具有专业水准的计算机软件,需要具备多方面的能力,例如,熟悉应用领域的相关知识,能合理地选择和设计各种数据结构和算法,精通软件工程相关知识和方法等。但无论如何,熟练的编程技巧仍是必备的基础能力。因为,无论多么丰富的领域知识,多么高效的数据结构和算法,多么良好的软件架构,最终都需要转化为计算机程序,才能被计算机所理解,进而指挥计算机按照人类的设想求解问题。在计算机发展的早期,人们必须通过在纸带上打孔的方式编写计算机程序。高级程序设计语言的出现,大大降低了人类与计算机沟通的难度。但计算机还未发展到能理解人类语言、动作、表情的程度,人们还是需要学习程序设计语言的语法和程序设计技巧,才能高效地与计算机沟通。c++是在c语言的基础上发展起来的,它继承了c语言的诸多优点。而面向对象程序设计特性的加入,又大大提高了程序开发、维护的效率。因此,十几年来,c++一直是使用最广泛的计算机高级程序设计语言之一。
本书的作者Y.Daniel Liang教授是国际知名的计算机教育家和专业书籍作家。多年来一直致力于教学方法的改革和教材的撰写,已与Prentice Hall公司合作出版了30余本计算机科学领域的专业书籍。这些书籍行销全世界,特别是Liang Java系列丛书,是最畅销的Java教材,被世界各地的高等院校广泛采用。本书是他在c++领域奉献给广大读者的最新力作。
本书分为三部分。第一部分介绍基础程序设计方法,包括基本数据类型和运算、分支语句、循环、函数、数组、指针和c字符串以及递归等内容。第二部分介绍面向对象程序设计方法,主要包括对象和类的基本概念、对象和类的深入内容、继承和多态、文件输入和输出、运算符重载及异常处理等内容。第三部分介绍了数据结构方面的基础知识,包括模板、链表、栈、队列、树、堆、优先队列、算法效率、排序算法、STL容器、STL算法等内容。
“基础先行方法”是本书区别于其他同类教材的最大特色。这种方法是指,并不在教学开始之初向学生介绍面向对象程序设计方法,而是首先介绍分支语句、循环、函数、数组等基础的程序设计方法,随后再引入面向对象程序设计方法。这种方法有利于学生循序渐进地掌握c++语言的程序设计技巧,已被国际计算机教育学届广泛接受。本书的另一特色是“清晰简明”的撰写风格,通过简短的、吸引人的例子来清晰地阐述概念,更容易提高学生学习的兴趣。
如果你还是个计算机程序设计的门外汉,本书可以将你引入这个广阔而引人入胜的领域;如果你对c++程序设计已经有所了解,本书也是一本很好的参考书籍。当然,如果你是一名计算机专业的在校学生,本书将是一本不可多得的高级语言程序设计课程的教材。
参与本书翻译工作的有王刚、刘晓光和刘璟,由王刚完成全书的审校工作。因时间仓促,翻译若有不妥之处,敬请读者批评指正。
  • 评论列表(0

留言评论