网站首页  软件下载  游戏下载  翻译软件  电子书下载  电影下载  电视剧下载  教程攻略

请输入您要查询的图书:

 

书名 C++程序设计(附光盘)/计算机科学丛书
分类
作者 (美)梁勇
出版社 机械工业出版社
下载
简介
编辑推荐

本书分为三部分。第一部分介绍基础程序设计方法,包括基本数据类型和运算、分支语句、循环、函数、数组、指针和C字符串以及递归等内容。第二部分介绍面向对象程序设计方法,主要包括对象和类的基奉概念、对象和类的深入内容、继承和多态、文件输入和输出、运算符重载及异常处理等内容。第三部分介绍了数据结构方面的基础知识,包括模板、链表、栈、队列、树、堆、优先队列、算法效率、排序算法、STL容器、STL算法等内容。

该书可供各大专院校作为教材使用,也可供从事相关工作的人员作为参考用书使用。

内容推荐

本书采用“基础先行的方法”,首先逐步介绍基础的程序设计概念,然后讲授面向对象程序设计方法,最后介绍如何利用面向对象方法构建具有错误处理、输入输出和复杂数据结构的有趣的应用程序。本书分为三部分:第一部分介绍基础程序设计方法,包括基本数据类型和运算、分支语句、循环、函数、数组、指针和C字符串以及递归等内容;第二部分介绍面向对象程序设计方法,主要包括对象和类的基本概念、对象和类的深入内容、继承和多态、文件输入和输出、运算符重载及异常处理等内容,第三部分介绍了数据结构方法的基础知识,包括模板、链表、栈、队列、树、堆、优先队列、算法效率、排序算法、STL容器、STL算法等内容。

本书可以作为计算机及相关专业的程序设计基础课程的教材,也可以作为C++语言程序设计的自学或函授学习的参考书。

目录

译者序

前言

第一部分 程序设计基础

第1章 计算机、程序和C++语言简介

 1.1 引言

 1.2 什么是计算机

1.2.1 CP[J

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章 循环

 4.1 引言

 4.2 while循环

4.2.1 实例:一个改进的数学学习工具

4.2.2 使用用户确认控制循环

4.2.3 使用哨兵值控制循环

 4.3 do-while循环

 4.4 for循环

 4.5 使用哪种循环

 4.6 嵌套的循环

 4.7 实例研究

4.7.1 实例:求最大公约数

4.7.2 实例:计算销售额

4.7.3 实例:显示数字金字塔

 4.8 关键字break和continue

 4.9 实例:输出素数

4.10 简单文件输入输出

4.10.1 向一个文件写入数据

4.10.2 从一个文件读取数据

4.10.3 检测文件尾

 小结

 习题

 程序设计练习

第5章 函数

 5.1 引言

 5.2 函数创建

 5.3 函数调用

 5.4 无返回值函数

 5.5 按值方式传递参数

 5.6 按引用方式传递参数

 5.7 函数重载

 5.8 函数原型

 5.9 默认参数

 5.10 实例研究:使用函数计算税款

 5.11 在不同程序中重用函数

 5.12 实例研究:生成随机字符

 5.13 变量的作用域

5.13.1 for循环中变量的作用域

5.13.2 静态局部变量

 5.14 数学函数

 5.15 函数抽象和逐步求精

5.15.1 自顶向下设计

5.15.2 自顶向下或自底向上实现

5.15.3 实现细节

 5.16 内联函数

 小结

 习题

 程序设计练习

第6章 数组

 6.1 引言

 6.2 数组基础

6.2.1 声明数组

6.2.2 数组下标变量

6.2.3 数组初始化语句

6.2.4 初始化字符数组

6.2.5 处理数组

6.2.6 实例:测试数组

6.2.7 实例:评定成绩等级

 6.3 数组作为函数参数

 6.4 数组作为函数返回值

 6.5 搜索

6.5.1 顺序搜索方法

6.5.2 二分搜索方法

 6.6 排序数组

6.6.1 选择排序

6.6.2 插入排序

 6.7 二维数组

6.7.1 声明二维数组

6.7.2 处理二维数组

6.7.3 二维数组作为函数参数

6.7.4 实例:评定多项选择测试的成绩

6.7.5 实例:计算纳税额

 6.8 多维数组

6.8.1 实例:计算学生成绩

6.8.2 实例:猜生日

 小结

 习题

 程序设计练习

第7章 指针和C字符串

 7.1 引言

 7.2 二指针基础

 7.3 用指针实现实参的引用传递

 7.4 数组和指针

 7.5 常量指针

 7.6 指针作为函数返回值

 7.7 动态内存分配

 7.8 实例研究:统计每个字母的出现次数

 7.9 字符和字符串

7.9.1 字符串函数

7.9.2 字符串存储和访问

7.9.3 读取字符串

7.9.4 C字符串函数

7.9.5 实例:获取子串

 7.10 实例研究:检查回文串

 小结

 习题

 程序设计练习

第8章 递归

 8.1 引言

 8.2 实例:阶乘

 8.3 实例:斐波那契数列

 8.4 用递归方法求解问题

 8.5 递归辅助函数

8.5.1 选择排序

8.5.2 二分搜索

 8.6 汉诺塔

 8.7 递归与迭代

 小结

 习题

 程序设计练习

第二部分 面向对象程序设计

第9章 对象和类

 9.1 引言

 9.2 声明类

 9.3 构造函数

 9.4 对象名

 9.5 声明和实现分离

 9.6 通过指针访问对象成员

 9.7 在堆中创建动态对象

 9.8 C++字符串类

9.8.1 构造一个字符串

9.8.2 追加字符串

9.8.3 字符串赋值

9.8.4 函数at、clear、erase和empty

9.8.5 函数length、size和capacity

9.8.6 字符串比较

9.8.7 获得子串

9.8.8 字符串搜索

9.8.9 字符串插入和替换

9.8.10 字符串运算符

 9.9 数据域封装

 9.10 变量作用域

 9.11 this指针

 9.12 对象作为函数参数

 9.13 对象数组

 9.14 类抽象和封装

 9.15 实例研究:Loan类

 9.16 构造函数初始化列表

 小结

 习题

 程序设计练习

第10章 对象和类的更多内容

 10.1 引言

 10.2 不可变对象和不可变类

 10.3 避免重复声明

 10.4 实例成员和静态成员

 10.5 析构函数

 10.6 拷贝构造函数

 10.7 自定义拷贝构造函数

 10.8 友元函数和友元类

 10.9 对象合成

 10.10 实例研究:Course类

 10.11 实例研究:StackOfIntegers类

 10.12 C++向量类

 小结

 习题

 程序设计练习

第11章 继承和多态

 11.1 引言

 11.2 基类和派生类

 11.3 泛型程序设计

 11.4 构造函数和析构函数

11.4.1 调用基类构造函数

11.4.2 构造函数链和析构函数链

 11.5 函数重定义

 11.6 多态和虚函数

 11.7 关键字protected

 11.8 抽象类和纯虚函数

 11.9 动态类型转换

 小结

 习题

 程序设计练习

笫12章 文件输入输出

 12.1 引言

 12.2 文本输入输出

12.2.1 向文件中写入数据

12.2.2 从文件中读取数据

12.2.3 检测文件是否存在

12.2.4 检测文件末尾

 12.3 格式化输出

 12.4 成员函数:getline、get和put

 12.5 fstream和文件打开模式

 12.6 检测流状态

 12.7 二进制输入输出

12.7.1 write函数

12.7.2 read函数

12.7.3 实例:二进制数组I/O

12.7.4 实例:二进制对象I/O

 12.8 随机访问文件

 12.9 更新文件

 小结

 习题

 程序设计练习

第13章 运算符重载

 13.1 引言

 13.2 Rational类

 13.3 运算符函数

 13.4 简写运算符重载

 13.5 [1运算符重载

 13.6 一元运算符重载

 13.7 ++和--运算符重载

 13.8 <<和>>运算符重载

 13.9 对象类型转换

 13.10 新的Rational类

 13.11 重载赋值运算符

 小结

 习题

 程序设计练习

第14章 异常处引

 14.1 引言

 14.2 异常处理概述

 14.3 异常处理机制的优点

 14.4 异常类

 14.5 自定义异常类

 14.6 多重异常捕获

 14.7 异常的传播

 14.8 重拋出异常

 14.9 异常规约

 14.10 何时使用异常机制

 小结

 习题

 程序设计练习

第三部分 数据结构

第15章 模板

 15.1 引言

 15.2 模板基础

 15.3 实例:一个通用排序函数

 15.4 模板类

 15.5 改进Stack类

 小结

 习题

 程序设计练习

笫16章 链表、栈和队列

 16.1 引言

 16.2 节点

 16.3 链表类

 16.4 实现LinkedList

16.4.1 实现addFirst(T element)

16.4.2 实现addLast(T element)

16.4.3 实现add(int index, T element)

16.4.4 实现removeFirst()

16.4.5 实现removeLast()

16.4.6 实现removeAt(int index)

 16.5 链表的变形

 16.6 使用链表类实现栈类

 16.7 队列

 16.8 迭代器

 小结

 习题

 程序设计练习

第17章 树、堆和优先队列

 17.1 引言

 17.2 二叉树

17.2.1 描述二叉树

17.2.2 访问二叉树中的节点

17.2.3 向二叉搜索树中插入数据元素

17.2.4 树的遍历

17.2.5 二叉树类

 17.3 堆

17.3.1 堆的描述

17.3.2 堆的删除操作

17.3.3 堆的插入操作

17.3.4 Heap类

 17.4 优先队列

 小结

 习题

 程序设计练习

第18章 算法效率和排序

 18.1 引言

 18.2 评价算法效率

18.2.1 大O符号

18.2.2 实例:复杂性计算

18.2.3 分析二分搜索算法

18.2.4 分析选择排序算法

18.2.5 分析插入排序算法

18.2.6 分析汉诺塔算法

18.2.7 常见增长函数比较

 18.3 起泡排序

 18.4 归并排序

 18.5 快速排序

 18.6 堆排序

 18.7 外排序

18.7.1 实现阶段Ⅰ

18.7.2 实现阶段Ⅱ

18.7.3 合并两个阶段

18.7.4 外排序分析

 小结

 习题

 程序设计练习

第19章 STL容器

 19.1 引言

 19.2 STL基础

 19.3 STL迭代器

19.3.1 迭代器类型

19.3.2 迭代器运算符

19.3.3 预定义的迭代器

19.3.4 istream—iterato和ostream_iterator

 19.4 顺序容器

19.4.1 顺序容器:vector

19.4.2 顺序容器:deque

19.4.3 顺序容器:list

 19.5 关联容器

19.5.1 关联容器:set和multiset

19.5.2 关联容器:map和multimap

 19.6 容器适配器

19.6.1 容器适配器:stack

19.6.2 容器适配器:queue

 19.7 容器适配器:priority_queue

 小结

 习题

 程序设计练习

第20章 STL算法

 20.1 引言

 20.2 算法类型

 20.3 copy

 20.4 fiill和fill_n

 20.5 generate和generate_n

 20.6 remove, remove_if, remove_copy和remove_copy_if

 20.7 replace, replace_if, replace_copy和replace_copy_if

 20.8 find, find_if, find end和find_first_of

 20.9 search和search_n

 20.10 sort和binary_search

 20.11 adjacent_find, merge和inplace_merge

 20.12 reverse和reverse copy

 20.13 rotate和rotate_copy

 20.14 swap, iter_swap和swap_ranges

 20.15 count和count_if

 20.16 max_element和min_element

 20.17 random_shuffle

 20.18 for each和transform

 20.19 includes, set_union, set_difference, set_intersection和set_symmetric_difference

 20.20 accumulate、adjacentdifference、inner_product和partial_sum

 小结

 习题

 程序设计练习

附录

 附录A C++关键字

 附录B ASCII字符集

 附录C 运算符优先级表

 附录D 位运算

随便看

 

霍普软件下载网电子书栏目提供海量电子书在线免费阅读及下载。

 

Copyright © 2002-2024 101bt.net All Rights Reserved
更新时间:2025/4/8 19:44:43