问题求解与程序设计(C++语言版)(第6版)

问题求解与程序设计(C++语言版)(第6版)
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者: [美] , [美] ,
2011-03
版次: 1
ISBN: 9787302245858
定价: 79.00
装帧: 平装
开本: 16开
纸张: 胶版纸
页数: 608页
字数: 980千字
8人买过
  •   通过采用经典的软件开发方法,《问题求解与程序设计(C++语言版)(第6版)》在强调软件工程原理和使用C++语言实现面向对象编成的同时,提供了坚实的程序设计基础。它十分清晰地阐述了C++程序设计。本书首先从简单的、易于理解的过程编程开始,逐渐拓展加深,直到最终完成动态数据结构的介绍为止。

      《问题求解与程序设计(C++语言版)(第6版)》的两位作者都是Temple大学计算机与信息科学教授。Elliot B. Koffman是美国最著名的计算机科学教育家之一,也是ACM任务组初级程序设计方法课程的前主席。他与其他作者合著了多部问题求教与面向对象方面的著作。Frank L. Friedman同时也是Temple大学计算机与信息科学系的主任。除了合著本书之外,他还编著了使用FORTRAN和BASIC编程的其他教材。他当前的研究方向是软件工程。

      《问题求解与程序设计(C++语言版)(第6版)》的编写目标是教材。《问题求解与程序设计(C++语言版)(第6版)》由14章组成,它们对于学生学习和掌握软件编程的思路、方法、技巧提供了有效的帮助。

      《问题求解与程序设计(C++语言版)(第6版)》结构清晰,取舍得当,读者易于使用本书给出的示例体验和体会数据结构的概念与实现技巧,更深入地掌握C++的核心内容。 第0章 作为一种职业途径的计算机科学

    概述

    0.1 为什么计算机科学或许是适合你的正确领域

    0.1.1 选择计算机科学专业的理由

    0.1.2 计算机科学家的特质

    0.2 大学经验:可选择的计算机学科和专业

    0.2.1 计算机科学

    0.2.2 计算机工程

    0.2.2 信息系统

    0.2.3 信息技术

    0.2.4 软件工程

    0.2.5 多学科专业

    0.3 工作机会

    0.3.1 在美国和世界上的需求

    0.3.2 对代表性不足群体的需求

    0.3.3 依然在地平线上的新职业

    第1章 计算机、问题求解和编程引论

    1.1 计算机概述

    1.1.1 早期的计算机

    1.1.2 计算机分类

    1.1.3 共享计算机资源

    本节练习

    1.2 计算机硬件

    1.2.1 存储器

    1.2.2 主存储器

    1.2.3 辅助存储器

    1.2.4 中央处理器

    1.2.5 输入/输出设备

    1.2.6 计算机网络

    1.2.7 万维网

    本节练习

    1.3 计算机软件

    1.3.1 操作系统

    1.3.2 应用软件

    1.3.3 编程语言

    1.3.4 面向对象编程

    本节练习

    1.4 处理高级语言程序

    1.4.1 执行程序

    本节练习

    1.5 软件开发方法

    本节练习

    1.6 应用软件开发方法

    案例研究——将英里转换为千米

    本节练习

    1.7 计算机程序员的职业道德

    1.7.1 隐私与数据滥用

    1.7.2 计算机黑客

    1.7.3 抄袭和盗版软件

    1.7.4 计算机资源的滥用

    本节练习

    本章复习

    快速自测练习

    复习题

    快速自测练习答案

    第2章 C++概述

    2.1 C++语言元素

    2.1.1 注释

    2.1.2 编译器指令:#include

    2.1.3 名称空间std

    2.1.4 函数main

    2.1.5 声明语句

    2.1.6 可运行语句

    本节练习

    2.2 保留字和标识符

    2.2.1 保留字

    2.2.2 标识符

    2.2.3 大写和小写字母

    本节练习

    2.3 数据类型和声明

    2.3.1 数据类型

    2.3.2 string类

    2.3.3 数据类型的目的

    2.3.4 声明

    2.3.5 常量声明

    本节练习

    2.4 可运行语句

    2.4.1 内存中的程序

    2.4.2 赋值语句

    2.4.3 输入/输出操作

    2.4.5 输入语句

    2.4.6 程序提示

    2.4.7 return语句

    本节练习

    2.5 C++程序的通用格式

    2.5.1 程序中的注释

    本节练习

    2.6 算术表达式

    2.6.1 操作符/和%

    2.6.2 混合类型表达式的数据类型

    2.6.3 混合类型赋值语句

    2.6.4 使用多个操作符的表达式

    2.6.5 在C++中编写数学公式

    案例研究——超市硬币处理器

    本节练习

    2.7 交互模式、批模式和数据文件

    2.7.1 输入重定向

    2.7.2 输出重定向

    本节练习

    2.8 常见编程错误

    2.8.1 语法错误

    2.8.2 运行时错误

    2.8.3 未检测到的错误

    2.8.4 逻辑错误

    本章复习

    快速自测练习

    复习题

    编程项目

    快速自测练习答案

    第3章 使用函数和类做自顶向下设计

    3.1 依据现有信息构造程序

    案例研究——计算圆的面积和周长

    案例研究——计算一批平面垫圈的重量

    本节练习

    3.2 库函数

    C++ 库函数

    展望未来

    本节练习

    3.3 自顶向下设计和结构图

    案例研究——画简单图形

    本节练习

    3.4 无参数函数

    3.4.1 函数原型

    3.4.2 函数定义

    3.4.3 程序中函数的位置

    3.4.4 函数执行顺序

    3.4.5 使用函数子程序的优点

    本节练习

    3.5 带输入参数的函数

    3.5.1 带输入参数的无返回值

    函数

    3.5.2 带输入参数和单返回值的

    函数

    3.5.3 带有多个参数的函数

    3.5.4 参数/参量列表对应关系

    3.5.5 函数数据区

    3.5.6 使用驱动模块测试函数

    本节练习

    3.6 名称的作用域

    本节练习

    3.7 借助类扩展C++:使用类string

    3.7.1 string类

    3.7.2 声明string对象

    3.7.3 读取和显示string对象

    3.7.4 字符串赋值和拼接

    3.7.5 操作符重载

    3.7.6 点表示法:调用函数length和at

    3.7.7 用于单词处理操作的成员函数

    3.7.8 将子字符串赋值给string对象

    本节练习

    3.8 计算机图形简介(选读)

    3.8.1 窗口的组成

    3.8.2 绘制矩形

    3.8.3 绘制圆、椭圆和弧线

    3.8.4 饼图和填充椭圆

    3.8.5 在绘图上添加文本

    本节练习

    3.9 常见编程错误

    分别测试函数子程序

    本章复习

    快速自测练习

    复习题

    编程项目

    快速自测练习答案

    第4章 选择结构:if和switch语句

    4.1 控制结构

    4.2 逻辑表达式

    4.2.1 使用关系和相等操作符的逻辑表达式

    4.2.2 使用逻辑操作符的逻辑表达式

    4.2.3 操作符优先级

    4.2.4 在C++中编写条件

    4.2.5 比较字符和字符串

    4.2.6 布尔赋值

    4.2.7 书写bool值

    4.2.8 使用整数表示逻辑值

    本节练习

    4.3 if控制语句简介

    4.3.1 带有两个备选方案的if语句

    4.3.2 带有从属语句的if语句

    4.3.3 使用字符和字符串的if语句条件

    4.3.4 if语句的格式

    本节练习

    4.4 使用复合备选语句的if语句

    4.4.1 跟踪if语句

    本节练习

    4.5 算法中的决策步骤

    案例研究——使用函数解决

    工资发放问题

    4.5.1 有关标识符作用域的提醒

    4.5.2 在结构图中添加数据流信息

    4.5.3 述评——软件开发方法

    本节练习

    4.6 检查算法的正确性

    本节练习

    4.7 嵌套if语句和多项备选抉择

    4.7.1 嵌套if语句和一系列

    if语句的比较

    4.7.2 编写嵌套if作为多个

    备选抉择

    4.7.3 条件的顺序

    4.7.4 逻辑表达式的短路计算

    本节练习

    4.8 switch控制语句

    4.8.1 适宜地使用break

    4.8.2 嵌套if语句与switch语句

    的比较

    4.8.3 使用switch语句选择

    备选函数

    本节练习

    4.9 常见编程错误

    本章复习

    快速自测练习

    复习题

    编程项目

    快速自测练习答案

    第5章 重复和循环语句

    5.1 计数循环和while语句

    5.1.1 while语句

    5.1.2 while语句语法

    本节练习

    5.2 使用循环累加和与乘积

    5.2.1 数量连乘

    5.2.2 复合赋值运算符

    本节练习

    5.3 for语句

    5.3.1 增量和减量操作符

    5.3.2 异于一的增量和减量

    5.3.3 显示值表

    本节练习

    5.4 条件循环

    5.4.1 使用减量控制变量的

    循环

    案例研究——监视石油供应

    5.4.2 零迭代循环

    5.4.3 更通用的条件循环

    本节练习

    5.5 循环设计和循环模式

    5.5.1 哨兵控制循环

    5.5.2 计算平均值

    5.5.3 标志控制循环

    本节练习

    5.6 do-while语句

    本节练习

    5.7 while、for、do-while循环复习

    本节练习

    5.8 嵌套循环

    本节练习

    5.9 调试和测试程序

    5.9.1 使用调试器

    5.9.2 无调试器的调试

    5.9.3 差一错误

    5.9.4 测试

    本节练习

    5.10 图形程序中的循环(选读)

    5.10.1 动画

    本节练习

    5.11 常见编程错误

    本章复习

    快速自测练习

    复习题

    编程项目

    快速自测练习答案

    第6章 模块化编程

    6.1 值参和引用参数

    6.1.1 传值调用和引用调用参数

    6.1.2 void函数能够返回结果

    6.1.3 什么时候使用引用参数或

    值参

    6.1.4 值参与引用参数的对比

    6.1.5 值参提供的保护

    6.1.6 再谈参量/参数列表的

    对应关系

    本节练习

    6.2 使用输出和输入参数的函数

    本节练习

    6.3 函数的逐步设计

    案例研究——通用和与

    平均值问题

    6.3.1 程序中标识符的多次声明

    本节练习

    6.4 与函数一起使用对象

    本节练习

    6.5 调试和测试程序系统

    6.5.1 自顶向下测试和桩模块

    6.5.2 自底向上测试和驱动程序

    6.5.3 程序系统调试技巧

    6.5.4 标识符作用域和观察

    窗口变量

    6.5.5 黑盒与白盒测试

    本节练习

    6.6 递归函数(选读)

    本节练习

    6.7 常见编程错误

    本章复习

    快速自测练习

    复习题

    编程项目

    快速自测练习答案

    第7章 简单数据类型

    7.1 常量再探讨

    7.1.1 #define编译器指令

    本节练习

    7.2 数值数据类型的内部表示

    7.2.1 定点和浮点数据类型

    7.2.2 整数类型

    7.2.3 浮点类型

    7.2.4 数值文字量的类型

    7.2.5 整数类型和浮点类型的取值范围

    7.2.6 数值的不精确性

    7.2.7 混合类型:提升

    7.2.8 类型转换

    7.2.9 类型强制转换

    本节练习

    7.3 字符数据和函数

    7.3.1 一些有用的字符函数

    本节练习

    7.4 bool类型数据和逻辑表达式

    7.4.1 求逻辑表达式的反

    7.4.2 bool类型函数

    7.4.3 bool类型数据的输入

    和输出

    本节练习

    7.5 枚举类型

    7.5.1 字符与枚举成员值

    7.5.2 包含枚举类型的比较

    7.5.3 整数类型之间的区别

    7.5.4 读和写枚举类型值

    7.5.5 枚举类型声明的位置

    7.5.6 作为强制转换操作符的

    枚举类型

    本节练习

    7.6 迭代逼近

    7.6.1 函数参数

    案例研究——求解根的二分法

    本节练习

    7.7 使用char类型数据控制

    图形程序(选读)

    7.7.1 生成随机数

    7.7.2 为随机数生成器提供种子

    本节练习

    7.8 常见编程错误

    本章复习

    快速自测练习

    复习题

    编程项目

    快速自测练习答案

    第8章 流和文件

    8.1 标准输入/输出流

    8.1.1 一次读取一个字符

    本节练习

    8.2 外部文件

    8.2.1 交互式处理与批处理

    8.2.2 外部文件的目录名称

    8.2.3 将流附加到外部文件上

    8.2.4 函数copyLine

    8.2.5 换行字符细解

    8.2.6 在文件流中使用getline

    本节练习

    8.3 将外部文件用于程序间的通信

    案例研究——准备工资单文件

    本节练习

    8.4 深入探讨读取字符串数据

    8.4.1 使用ignore跳过换行字符

    本节练习

    8.5 输入/输出操作算子

    本节练习

    8.6 常见编程错误

    本章复习

    快速自测练习

    复习题

    编程项目

    快速自测练习答案

    第9章 数据结构:数组和结构

    9.1 数组数据类型

    9.1.1 数组声明

    9.1.2 数组初始化

    9.1.3 数组下标

    本节练习

    9.2 顺序访问数组元素

    9.2.1 字符串和字符数组

    本节练习

    9.3 数组参数

    9.3.1 数组元素作参数

    9.3.2 传递数组参数

    本节练习

    9.4 读取部分数组

    本节练习

    9.5 搜索和排序数组

    9.5.1 找到数组中的最小值

    9.5.2 数组搜索

    9.5.3 以升序排序数组

    本节练习

    9.6 分析算法:大O表示法

    9.6.1 搜索算法分析

    9.6.2 排序算法分析

    本节练习

    9.7 多维数组

    9.7.1 声明二维数组

    9.7.2 初始化二维数组

    9.7.3 处理二维数组的嵌套循环

    9.7.4 二维数组用作函数参数

    9.7.5 拥有多个维的数组

    本节练习

    9.8 结构数据类型

    9.8.1 声明结构类型和结构

    类型变量

    9.8.2 访问结构成员

    本节练习

    9.9 作操作数和参数使用的结构

    9.9.1 结构复制或赋值

    9.9.2 作为参数传递结构

    9.9.3 读取结构

    9.9.4 结构用作函数结果

    9.9.5 引用参数的效率

    本节练习

    9.10 结构数组

    本节练习

    9.11 作为字符数组的字符串(选读)

    9.11.1 声明和初始化字符数组

    9.11.2 读取和写入字符数组

    9.11.3 用于字符数组的一些

    有用函数

    本节练习

    9.12 使用数组的图形程序(选读)

    9.12.1 绘制多边形

    9.12.2 绘制网格

    本节练习

    9.13 常见编程错误

    本章复习

    快速自测练习

    复习题

    编程项目

    快速自测练习答案

    第10章 用户自定义类

    10.1 类定义和使用

    10.1.1 counter类

    10.1.2 counter类的类定义

    10.1.3 文件counter类中的编译器指令

    10.1.4 使用counter类

    10.1.5 文件CounterTest.cpp中的编译器指令

    本节练习

    10.2 类的实现

    10.2.1 构造函数

    10.2.2 访问器和修改器函数

    10.2.3 文件counter.cpp中的

    编译器指令

    本节练习

    10.3 类和对象使用规则小结

    10.3.1 对象是类的实例

    10.3.2 公有与私有访问的对比

    10.3.3 类和成员函数定义语法

    10.3.4 结构和类的比较

    10.3.5 项目文件和单独编译

    10.3.6 数据、结构和类的结合

    10.3.7 函数重载和多态

    本节练习

    10.4 类用作操作数和参数

    本节练习

    10.5 分数类

    10.5.1 fraction类的设计

    10.5.2 使用类fraction

    10.5.3 类fraction的实现文件

    本节练习

    10.6 circle 类

    10.6.1 设计circle类

    10.6.2 使用circle类

    10.6.3 类circle 的实现文件

    本节练习

    10.7 一个简单的字符串类

    10.7.1 类simple String的设计

    10.7.2 类simple String 的定义

    10.7.3 测试类simple String的

    成员函数

    10.7.4 类simple String的

    实现文件

    本节练习

    10.8 一个存款账户类

    案例研究——使用存款账户类

    本节练习

    10.9 常见编程错误

    本章复习

    快速自测练习

    习题

    编程项目

    快速自测练习答案

    第11章 数据抽象与面向对象设计

    11.1 模版类

    11.1.1 模版类的定义

    11.1.2 模版类的实现

    11.1.3 支持单独编译的编译器

    指令

    本节练习

    11.2 索引列表

    11.2.1 索引列表类的需要

    11.2.2 索引列表类的分析与

    设计

    11.2.3 使用index List类

    本节练习

    11.3 实现索引列表类

    本节练习

    11.4 面向对象设计

    11.4.1 面向对象设计方法论

    案例研究——E-mail提供商的

    地址簿

    本节练习

    11.5 操作符重载与友元

    11.5.1 操作符重载

    11.5.2 友元

    本?练习

    11.6 vector类

    11.6.1 向量与数组

    11.6.2 向量函数

    11.6.3 通过迭代器访问向量

    11.6.4 标准算法

    11.6.5 在E-mail地址簿案例中

    使用向量

    本节练习

    11.7 常见编程错误

    本章复习

    快速自测练习

    复习题

    编程项目

    快速自测练习答案

    第12章 递归

    12.1 递归的本质

    12.1.1 递归问题与解答的性质

    本节练习

    12.2 跟踪递归函数

    12.2.1 跟踪一个递归函数

    12.2.2 以反序显示字符

    12.2.3 用于函数调用的栈

    12.2.4 C++中的参数栈实现

    本节练习

    12.3 递归的数学函数

    本节练习

    12.4 以数组为参数的递归函数

    案例研究——二叉搜索

    本节练习

    12.5 问题的递归求解

    案例研究——汉诺塔

    12.5.1 迭代函数与递归函数的

    比较

    本节练习

    12.6 常见编程错误

    本章复习

    快速自测练习

    复习题

    编程项目

    快速自测练习答案

    第13章 指针与动态数据结构

    13.1 指针与new操作符

    13.1.1 用指针来访问数据

    13.1.2 指针操作

    13.1.3 数组指针

    13.1.4 指向结构体的指针

    本节练习

    13.2 操纵堆

    13.2.1 作用于堆上的new操纵结果

    13.2.2 把内存单元返回给堆

    本节练习

    13.3 链表与list类

    13.3.1 结点声明

    13.3.2 结点连接

    13.3.3 在链表中插入结点

    13.3.4 在链表头插头结点

    13.3.5 在链表尾插入结点

    13.3.6 删除结点

    13.3.7 遍历链表

    13.3.8 环形链表与双向

    链表(可选)

    13.3.9 list类

    本节练习

    13.4 抽象数据类型——栈

    13.4.1 C++的stack类

    13.4.2 实现stack模版类

    13.4.3 实现栈操作

    13.4.4 测试栈

    本节练习

    13.5 抽象数据类型——队列

    13.5.1 C++的queue类

    13.5.2 实现队列

    本节练习

    13.6 二叉树

    13.6.1 二叉搜索树

    13.6.2 搜索二叉搜索树

    13.6.3 构建二叉搜索树

    13.6.4 显示二叉搜索树

    本节练习

    13.7 二叉搜索树抽象数据结构

    13.7.1 二叉树类的设计

    13.7.2 二叉树类的实现

    本节练习

    13.8 二叉搜索树的效率

    本节练习

    13.9 常见编程错误

    本章复习

    快速自测练习

    复习题

    编程项目

    快速自测练习答案

    第14章 使用进程和线程的多处理

    14.1 多任务处理

    14.1.1 线性与并行编程

    14.1.2 共享时间的多任务

    处理

    14.1.3 抢占多任务处理

    14.1.4 时间片与并行性

    14.1.5 并发编程

    本节练习

    14.2 进程

    14.2.1 创建一个进程

    14.2.2 等待进程

    14.2.3 从一个进程中运行另一个

    程序

    本节练习

    14.3 进程间通信与管道

    14.3.1 管道

    14.3.2 使用管道

    14.3.3 使用标准输入进行进程间

    通信

    14.3.4 演示父进程与子进程

    之间的通信

    本节练习

    14.4 线程

    14.4.1 创建一个线程

    14.4.2 线程同步化

    14.4.3 互斥锁

    14.4.4 死锁

    本节练习

    案例研究——线程演示

    14.5 常见编程错误

    本章复习

    快速自测练习

    复习题

    编程项目

    快速自测练习答案
  • 内容简介:
      通过采用经典的软件开发方法,《问题求解与程序设计(C++语言版)(第6版)》在强调软件工程原理和使用C++语言实现面向对象编成的同时,提供了坚实的程序设计基础。它十分清晰地阐述了C++程序设计。本书首先从简单的、易于理解的过程编程开始,逐渐拓展加深,直到最终完成动态数据结构的介绍为止。

      《问题求解与程序设计(C++语言版)(第6版)》的两位作者都是Temple大学计算机与信息科学教授。Elliot B. Koffman是美国最著名的计算机科学教育家之一,也是ACM任务组初级程序设计方法课程的前主席。他与其他作者合著了多部问题求教与面向对象方面的著作。Frank L. Friedman同时也是Temple大学计算机与信息科学系的主任。除了合著本书之外,他还编著了使用FORTRAN和BASIC编程的其他教材。他当前的研究方向是软件工程。

      《问题求解与程序设计(C++语言版)(第6版)》的编写目标是教材。《问题求解与程序设计(C++语言版)(第6版)》由14章组成,它们对于学生学习和掌握软件编程的思路、方法、技巧提供了有效的帮助。

      《问题求解与程序设计(C++语言版)(第6版)》结构清晰,取舍得当,读者易于使用本书给出的示例体验和体会数据结构的概念与实现技巧,更深入地掌握C++的核心内容。
  • 目录:
    第0章 作为一种职业途径的计算机科学

    概述

    0.1 为什么计算机科学或许是适合你的正确领域

    0.1.1 选择计算机科学专业的理由

    0.1.2 计算机科学家的特质

    0.2 大学经验:可选择的计算机学科和专业

    0.2.1 计算机科学

    0.2.2 计算机工程

    0.2.2 信息系统

    0.2.3 信息技术

    0.2.4 软件工程

    0.2.5 多学科专业

    0.3 工作机会

    0.3.1 在美国和世界上的需求

    0.3.2 对代表性不足群体的需求

    0.3.3 依然在地平线上的新职业

    第1章 计算机、问题求解和编程引论

    1.1 计算机概述

    1.1.1 早期的计算机

    1.1.2 计算机分类

    1.1.3 共享计算机资源

    本节练习

    1.2 计算机硬件

    1.2.1 存储器

    1.2.2 主存储器

    1.2.3 辅助存储器

    1.2.4 中央处理器

    1.2.5 输入/输出设备

    1.2.6 计算机网络

    1.2.7 万维网

    本节练习

    1.3 计算机软件

    1.3.1 操作系统

    1.3.2 应用软件

    1.3.3 编程语言

    1.3.4 面向对象编程

    本节练习

    1.4 处理高级语言程序

    1.4.1 执行程序

    本节练习

    1.5 软件开发方法

    本节练习

    1.6 应用软件开发方法

    案例研究——将英里转换为千米

    本节练习

    1.7 计算机程序员的职业道德

    1.7.1 隐私与数据滥用

    1.7.2 计算机黑客

    1.7.3 抄袭和盗版软件

    1.7.4 计算机资源的滥用

    本节练习

    本章复习

    快速自测练习

    复习题

    快速自测练习答案

    第2章 C++概述

    2.1 C++语言元素

    2.1.1 注释

    2.1.2 编译器指令:#include

    2.1.3 名称空间std

    2.1.4 函数main

    2.1.5 声明语句

    2.1.6 可运行语句

    本节练习

    2.2 保留字和标识符

    2.2.1 保留字

    2.2.2 标识符

    2.2.3 大写和小写字母

    本节练习

    2.3 数据类型和声明

    2.3.1 数据类型

    2.3.2 string类

    2.3.3 数据类型的目的

    2.3.4 声明

    2.3.5 常量声明

    本节练习

    2.4 可运行语句

    2.4.1 内存中的程序

    2.4.2 赋值语句

    2.4.3 输入/输出操作

    2.4.5 输入语句

    2.4.6 程序提示

    2.4.7 return语句

    本节练习

    2.5 C++程序的通用格式

    2.5.1 程序中的注释

    本节练习

    2.6 算术表达式

    2.6.1 操作符/和%

    2.6.2 混合类型表达式的数据类型

    2.6.3 混合类型赋值语句

    2.6.4 使用多个操作符的表达式

    2.6.5 在C++中编写数学公式

    案例研究——超市硬币处理器

    本节练习

    2.7 交互模式、批模式和数据文件

    2.7.1 输入重定向

    2.7.2 输出重定向

    本节练习

    2.8 常见编程错误

    2.8.1 语法错误

    2.8.2 运行时错误

    2.8.3 未检测到的错误

    2.8.4 逻辑错误

    本章复习

    快速自测练习

    复习题

    编程项目

    快速自测练习答案

    第3章 使用函数和类做自顶向下设计

    3.1 依据现有信息构造程序

    案例研究——计算圆的面积和周长

    案例研究——计算一批平面垫圈的重量

    本节练习

    3.2 库函数

    C++ 库函数

    展望未来

    本节练习

    3.3 自顶向下设计和结构图

    案例研究——画简单图形

    本节练习

    3.4 无参数函数

    3.4.1 函数原型

    3.4.2 函数定义

    3.4.3 程序中函数的位置

    3.4.4 函数执行顺序

    3.4.5 使用函数子程序的优点

    本节练习

    3.5 带输入参数的函数

    3.5.1 带输入参数的无返回值

    函数

    3.5.2 带输入参数和单返回值的

    函数

    3.5.3 带有多个参数的函数

    3.5.4 参数/参量列表对应关系

    3.5.5 函数数据区

    3.5.6 使用驱动模块测试函数

    本节练习

    3.6 名称的作用域

    本节练习

    3.7 借助类扩展C++:使用类string

    3.7.1 string类

    3.7.2 声明string对象

    3.7.3 读取和显示string对象

    3.7.4 字符串赋值和拼接

    3.7.5 操作符重载

    3.7.6 点表示法:调用函数length和at

    3.7.7 用于单词处理操作的成员函数

    3.7.8 将子字符串赋值给string对象

    本节练习

    3.8 计算机图形简介(选读)

    3.8.1 窗口的组成

    3.8.2 绘制矩形

    3.8.3 绘制圆、椭圆和弧线

    3.8.4 饼图和填充椭圆

    3.8.5 在绘图上添加文本

    本节练习

    3.9 常见编程错误

    分别测试函数子程序

    本章复习

    快速自测练习

    复习题

    编程项目

    快速自测练习答案

    第4章 选择结构:if和switch语句

    4.1 控制结构

    4.2 逻辑表达式

    4.2.1 使用关系和相等操作符的逻辑表达式

    4.2.2 使用逻辑操作符的逻辑表达式

    4.2.3 操作符优先级

    4.2.4 在C++中编写条件

    4.2.5 比较字符和字符串

    4.2.6 布尔赋值

    4.2.7 书写bool值

    4.2.8 使用整数表示逻辑值

    本节练习

    4.3 if控制语句简介

    4.3.1 带有两个备选方案的if语句

    4.3.2 带有从属语句的if语句

    4.3.3 使用字符和字符串的if语句条件

    4.3.4 if语句的格式

    本节练习

    4.4 使用复合备选语句的if语句

    4.4.1 跟踪if语句

    本节练习

    4.5 算法中的决策步骤

    案例研究——使用函数解决

    工资发放问题

    4.5.1 有关标识符作用域的提醒

    4.5.2 在结构图中添加数据流信息

    4.5.3 述评——软件开发方法

    本节练习

    4.6 检查算法的正确性

    本节练习

    4.7 嵌套if语句和多项备选抉择

    4.7.1 嵌套if语句和一系列

    if语句的比较

    4.7.2 编写嵌套if作为多个

    备选抉择

    4.7.3 条件的顺序

    4.7.4 逻辑表达式的短路计算

    本节练习

    4.8 switch控制语句

    4.8.1 适宜地使用break

    4.8.2 嵌套if语句与switch语句

    的比较

    4.8.3 使用switch语句选择

    备选函数

    本节练习

    4.9 常见编程错误

    本章复习

    快速自测练习

    复习题

    编程项目

    快速自测练习答案

    第5章 重复和循环语句

    5.1 计数循环和while语句

    5.1.1 while语句

    5.1.2 while语句语法

    本节练习

    5.2 使用循环累加和与乘积

    5.2.1 数量连乘

    5.2.2 复合赋值运算符

    本节练习

    5.3 for语句

    5.3.1 增量和减量操作符

    5.3.2 异于一的增量和减量

    5.3.3 显示值表

    本节练习

    5.4 条件循环

    5.4.1 使用减量控制变量的

    循环

    案例研究——监视石油供应

    5.4.2 零迭代循环

    5.4.3 更通用的条件循环

    本节练习

    5.5 循环设计和循环模式

    5.5.1 哨兵控制循环

    5.5.2 计算平均值

    5.5.3 标志控制循环

    本节练习

    5.6 do-while语句

    本节练习

    5.7 while、for、do-while循环复习

    本节练习

    5.8 嵌套循环

    本节练习

    5.9 调试和测试程序

    5.9.1 使用调试器

    5.9.2 无调试器的调试

    5.9.3 差一错误

    5.9.4 测试

    本节练习

    5.10 图形程序中的循环(选读)

    5.10.1 动画

    本节练习

    5.11 常见编程错误

    本章复习

    快速自测练习

    复习题

    编程项目

    快速自测练习答案

    第6章 模块化编程

    6.1 值参和引用参数

    6.1.1 传值调用和引用调用参数

    6.1.2 void函数能够返回结果

    6.1.3 什么时候使用引用参数或

    值参

    6.1.4 值参与引用参数的对比

    6.1.5 值参提供的保护

    6.1.6 再谈参量/参数列表的

    对应关系

    本节练习

    6.2 使用输出和输入参数的函数

    本节练习

    6.3 函数的逐步设计

    案例研究——通用和与

    平均值问题

    6.3.1 程序中标识符的多次声明

    本节练习

    6.4 与函数一起使用对象

    本节练习

    6.5 调试和测试程序系统

    6.5.1 自顶向下测试和桩模块

    6.5.2 自底向上测试和驱动程序

    6.5.3 程序系统调试技巧

    6.5.4 标识符作用域和观察

    窗口变量

    6.5.5 黑盒与白盒测试

    本节练习

    6.6 递归函数(选读)

    本节练习

    6.7 常见编程错误

    本章复习

    快速自测练习

    复习题

    编程项目

    快速自测练习答案

    第7章 简单数据类型

    7.1 常量再探讨

    7.1.1 #define编译器指令

    本节练习

    7.2 数值数据类型的内部表示

    7.2.1 定点和浮点数据类型

    7.2.2 整数类型

    7.2.3 浮点类型

    7.2.4 数值文字量的类型

    7.2.5 整数类型和浮点类型的取值范围

    7.2.6 数值的不精确性

    7.2.7 混合类型:提升

    7.2.8 类型转换

    7.2.9 类型强制转换

    本节练习

    7.3 字符数据和函数

    7.3.1 一些有用的字符函数

    本节练习

    7.4 bool类型数据和逻辑表达式

    7.4.1 求逻辑表达式的反

    7.4.2 bool类型函数

    7.4.3 bool类型数据的输入

    和输出

    本节练习

    7.5 枚举类型

    7.5.1 字符与枚举成员值

    7.5.2 包含枚举类型的比较

    7.5.3 整数类型之间的区别

    7.5.4 读和写枚举类型值

    7.5.5 枚举类型声明的位置

    7.5.6 作为强制转换操作符的

    枚举类型

    本节练习

    7.6 迭代逼近

    7.6.1 函数参数

    案例研究——求解根的二分法

    本节练习

    7.7 使用char类型数据控制

    图形程序(选读)

    7.7.1 生成随机数

    7.7.2 为随机数生成器提供种子

    本节练习

    7.8 常见编程错误

    本章复习

    快速自测练习

    复习题

    编程项目

    快速自测练习答案

    第8章 流和文件

    8.1 标准输入/输出流

    8.1.1 一次读取一个字符

    本节练习

    8.2 外部文件

    8.2.1 交互式处理与批处理

    8.2.2 外部文件的目录名称

    8.2.3 将流附加到外部文件上

    8.2.4 函数copyLine

    8.2.5 换行字符细解

    8.2.6 在文件流中使用getline

    本节练习

    8.3 将外部文件用于程序间的通信

    案例研究——准备工资单文件

    本节练习

    8.4 深入探讨读取字符串数据

    8.4.1 使用ignore跳过换行字符

    本节练习

    8.5 输入/输出操作算子

    本节练习

    8.6 常见编程错误

    本章复习

    快速自测练习

    复习题

    编程项目

    快速自测练习答案

    第9章 数据结构:数组和结构

    9.1 数组数据类型

    9.1.1 数组声明

    9.1.2 数组初始化

    9.1.3 数组下标

    本节练习

    9.2 顺序访问数组元素

    9.2.1 字符串和字符数组

    本节练习

    9.3 数组参数

    9.3.1 数组元素作参数

    9.3.2 传递数组参数

    本节练习

    9.4 读取部分数组

    本节练习

    9.5 搜索和排序数组

    9.5.1 找到数组中的最小值

    9.5.2 数组搜索

    9.5.3 以升序排序数组

    本节练习

    9.6 分析算法:大O表示法

    9.6.1 搜索算法分析

    9.6.2 排序算法分析

    本节练习

    9.7 多维数组

    9.7.1 声明二维数组

    9.7.2 初始化二维数组

    9.7.3 处理二维数组的嵌套循环

    9.7.4 二维数组用作函数参数

    9.7.5 拥有多个维的数组

    本节练习

    9.8 结构数据类型

    9.8.1 声明结构类型和结构

    类型变量

    9.8.2 访问结构成员

    本节练习

    9.9 作操作数和参数使用的结构

    9.9.1 结构复制或赋值

    9.9.2 作为参数传递结构

    9.9.3 读取结构

    9.9.4 结构用作函数结果

    9.9.5 引用参数的效率

    本节练习

    9.10 结构数组

    本节练习

    9.11 作为字符数组的字符串(选读)

    9.11.1 声明和初始化字符数组

    9.11.2 读取和写入字符数组

    9.11.3 用于字符数组的一些

    有用函数

    本节练习

    9.12 使用数组的图形程序(选读)

    9.12.1 绘制多边形

    9.12.2 绘制网格

    本节练习

    9.13 常见编程错误

    本章复习

    快速自测练习

    复习题

    编程项目

    快速自测练习答案

    第10章 用户自定义类

    10.1 类定义和使用

    10.1.1 counter类

    10.1.2 counter类的类定义

    10.1.3 文件counter类中的编译器指令

    10.1.4 使用counter类

    10.1.5 文件CounterTest.cpp中的编译器指令

    本节练习

    10.2 类的实现

    10.2.1 构造函数

    10.2.2 访问器和修改器函数

    10.2.3 文件counter.cpp中的

    编译器指令

    本节练习

    10.3 类和对象使用规则小结

    10.3.1 对象是类的实例

    10.3.2 公有与私有访问的对比

    10.3.3 类和成员函数定义语法

    10.3.4 结构和类的比较

    10.3.5 项目文件和单独编译

    10.3.6 数据、结构和类的结合

    10.3.7 函数重载和多态

    本节练习

    10.4 类用作操作数和参数

    本节练习

    10.5 分数类

    10.5.1 fraction类的设计

    10.5.2 使用类fraction

    10.5.3 类fraction的实现文件

    本节练习

    10.6 circle 类

    10.6.1 设计circle类

    10.6.2 使用circle类

    10.6.3 类circle 的实现文件

    本节练习

    10.7 一个简单的字符串类

    10.7.1 类simple String的设计

    10.7.2 类simple String 的定义

    10.7.3 测试类simple String的

    成员函数

    10.7.4 类simple String的

    实现文件

    本节练习

    10.8 一个存款账户类

    案例研究——使用存款账户类

    本节练习

    10.9 常见编程错误

    本章复习

    快速自测练习

    习题

    编程项目

    快速自测练习答案

    第11章 数据抽象与面向对象设计

    11.1 模版类

    11.1.1 模版类的定义

    11.1.2 模版类的实现

    11.1.3 支持单独编译的编译器

    指令

    本节练习

    11.2 索引列表

    11.2.1 索引列表类的需要

    11.2.2 索引列表类的分析与

    设计

    11.2.3 使用index List类

    本节练习

    11.3 实现索引列表类

    本节练习

    11.4 面向对象设计

    11.4.1 面向对象设计方法论

    案例研究——E-mail提供商的

    地址簿

    本节练习

    11.5 操作符重载与友元

    11.5.1 操作符重载

    11.5.2 友元

    本?练习

    11.6 vector类

    11.6.1 向量与数组

    11.6.2 向量函数

    11.6.3 通过迭代器访问向量

    11.6.4 标准算法

    11.6.5 在E-mail地址簿案例中

    使用向量

    本节练习

    11.7 常见编程错误

    本章复习

    快速自测练习

    复习题

    编程项目

    快速自测练习答案

    第12章 递归

    12.1 递归的本质

    12.1.1 递归问题与解答的性质

    本节练习

    12.2 跟踪递归函数

    12.2.1 跟踪一个递归函数

    12.2.2 以反序显示字符

    12.2.3 用于函数调用的栈

    12.2.4 C++中的参数栈实现

    本节练习

    12.3 递归的数学函数

    本节练习

    12.4 以数组为参数的递归函数

    案例研究——二叉搜索

    本节练习

    12.5 问题的递归求解

    案例研究——汉诺塔

    12.5.1 迭代函数与递归函数的

    比较

    本节练习

    12.6 常见编程错误

    本章复习

    快速自测练习

    复习题

    编程项目

    快速自测练习答案

    第13章 指针与动态数据结构

    13.1 指针与new操作符

    13.1.1 用指针来访问数据

    13.1.2 指针操作

    13.1.3 数组指针

    13.1.4 指向结构体的指针

    本节练习

    13.2 操纵堆

    13.2.1 作用于堆上的new操纵结果

    13.2.2 把内存单元返回给堆

    本节练习

    13.3 链表与list类

    13.3.1 结点声明

    13.3.2 结点连接

    13.3.3 在链表中插入结点

    13.3.4 在链表头插头结点

    13.3.5 在链表尾插入结点

    13.3.6 删除结点

    13.3.7 遍历链表

    13.3.8 环形链表与双向

    链表(可选)

    13.3.9 list类

    本节练习

    13.4 抽象数据类型——栈

    13.4.1 C++的stack类

    13.4.2 实现stack模版类

    13.4.3 实现栈操作

    13.4.4 测试栈

    本节练习

    13.5 抽象数据类型——队列

    13.5.1 C++的queue类

    13.5.2 实现队列

    本节练习

    13.6 二叉树

    13.6.1 二叉搜索树

    13.6.2 搜索二叉搜索树

    13.6.3 构建二叉搜索树

    13.6.4 显示二叉搜索树

    本节练习

    13.7 二叉搜索树抽象数据结构

    13.7.1 二叉树类的设计

    13.7.2 二叉树类的实现

    本节练习

    13.8 二叉搜索树的效率

    本节练习

    13.9 常见编程错误

    本章复习

    快速自测练习

    复习题

    编程项目

    快速自测练习答案

    第14章 使用进程和线程的多处理

    14.1 多任务处理

    14.1.1 线性与并行编程

    14.1.2 共享时间的多任务

    处理

    14.1.3 抢占多任务处理

    14.1.4 时间片与并行性

    14.1.5 并发编程

    本节练习

    14.2 进程

    14.2.1 创建一个进程

    14.2.2 等待进程

    14.2.3 从一个进程中运行另一个

    程序

    本节练习

    14.3 进程间通信与管道

    14.3.1 管道

    14.3.2 使用管道

    14.3.3 使用标准输入进行进程间

    通信

    14.3.4 演示父进程与子进程

    之间的通信

    本节练习

    14.4 线程

    14.4.1 创建一个线程

    14.4.2 线程同步化

    14.4.3 互斥锁

    14.4.4 死锁

    本节练习

    案例研究——线程演示

    14.5 常见编程错误

    本章复习

    快速自测练习

    复习题

    编程项目

    快速自测练习答案
查看详情
系列丛书 / 更多
问题求解与程序设计(C++语言版)(第6版)
计算机网络(第5版)
[美]特南鲍姆、[美]韦瑟罗尔 著;严伟、潘爱民 译
问题求解与程序设计(C++语言版)(第6版)
人工智能:一种现代的方法
[美]罗素(Stuart J.Russell)、[美]诺维格(Peter Norvig) 著;殷建平、祝恩、刘越 译
问题求解与程序设计(C++语言版)(第6版)
世界著名计算机教材精选:分布式数据库系统原理(第3版)
[德]顾兹叙(M.Tamer Ozsu)、[德]Patrick Valduriez 编;周屗柱、范举、吴昊 译
问题求解与程序设计(C++语言版)(第6版)
网络安全基础 (第5版):应用与标准
[美]斯托林斯(William Stallings) 著;白国强 译
问题求解与程序设计(C++语言版)(第6版)
数据结构与算法分析
奈霍夫(Larry Nyhoff) 著;黄达明 译
问题求解与程序设计(C++语言版)(第6版)
世界著名计算机教材精选:TCP/IP协议原理与应用(第4版)
Jeffrey、Laura、Ed Tittel 著;金名 译
问题求解与程序设计(C++语言版)(第6版)
世界著名计算机教材精选:实用MATLAB图像和视频处理
[美]马奎斯(Oge Marpues) 著;章毓晋 译
问题求解与程序设计(C++语言版)(第6版)
世界著名计算机教材精选:程序设计基础(第5版)
[美]文尼特(Stewart Venit)、[美]德雷克(Elizabeth Drake) 著;远红亮 译
问题求解与程序设计(C++语言版)(第6版)
世界著名计算机教材精选:数字通信技术
[德]Christoph、[德]Harald Sack 著;季松、程峰 译
问题求解与程序设计(C++语言版)(第6版)
无线移动网络安全(第2版)
Man Young Rhee 著;葛秀慧 译
问题求解与程序设计(C++语言版)(第6版)
计算机组织与体系结构
[美]William Stallings 著;张昆藏 译
问题求解与程序设计(C++语言版)(第6版)
世界著名计算机教材精选:Java软件结构与数据结构(第4版)
[美]刘易斯(John Lewis)、[美]蔡斯(Joseph Chase) 著;金名 译
相关图书 / 更多
问题求解与程序设计(C++语言版)(第6版)
问题·案例·对策:公文写作教与学
汪东发 编著;张鑫
问题求解与程序设计(C++语言版)(第6版)
问题搜寻法 建筑策划指导手册(原著第五版) Problem Seeking An Architectural Prog
[美]威廉·M.佩纳 William M.Pe.a (美)史蒂文·A.帕歇尔 Steven
问题求解与程序设计(C++语言版)(第6版)
问题解决与数学学习——技工院校数学教学实践与探究
邓佳欣 田满红
问题求解与程序设计(C++语言版)(第6版)
问题化学习
王天蓉;徐谊
问题求解与程序设计(C++语言版)(第6版)
问题域与历史性
[比利时]米歇尔·梅耶 著;沈澍 译;紫金港 出品;史忠义
问题求解与程序设计(C++语言版)(第6版)
问题、方法与论文写作:传播研究引论
邓树明
问题求解与程序设计(C++语言版)(第6版)
问题解决力养成 STEAM科学盒子:神奇液压
吴士宝 译;伊恩·格雷厄姆 文;斯图尔特·霍姆斯 图
问题求解与程序设计(C++语言版)(第6版)
问题导引与文本释义:解读《共产党宣言》
李风华
问题求解与程序设计(C++语言版)(第6版)
问题来了!你怎么选 一本适合全家共读的选择之书! 35道值得深思的成长选择题!
[法]查理·德沃特 著;[法]卡米耶·德·古
问题求解与程序设计(C++语言版)(第6版)
问题解决力养成STEAM科学盒子:光学实验室
刘宇 译;[美]克里斯·赫希曼 文;[英]约翰·德沃勒 图;乐乐趣 出品
问题求解与程序设计(C++语言版)(第6版)
问题来了!套装两册
[法]查理·德沃特 著;[法]卡米耶·德·古
问题求解与程序设计(C++语言版)(第6版)
问题导向(道理学理哲理·党的创新理论研究阐释丛书)
韩喜平
您可能感兴趣 / 更多
问题求解与程序设计(C++语言版)(第6版)
孩子,把你的手给我1:怎么说孩子才爱听,怎么教孩子才肯学?帮助每一位3-12岁孩子的父母结束与孩子的所有冲突!
[美]海姆·G.吉诺特
问题求解与程序设计(C++语言版)(第6版)
怎样做成大事
[美]丹·加德纳(Dan Gardner) 著;贾拥民 译;湛庐文化 出品;[丹麦]傅以斌(Bent Flyvbjerg)
问题求解与程序设计(C++语言版)(第6版)
1200年希腊罗马神话
[美]伊迪丝·汉密尔顿
问题求解与程序设计(C++语言版)(第6版)
爱情心理学(新编本)
[美]罗伯特·J. 斯腾伯格 (美)凯琳·斯腾伯格 倪爱萍 译
问题求解与程序设计(C++语言版)(第6版)
黄金圈法则
[美]西蒙·斯涅克 著;磨铁文化 出品
问题求解与程序设计(C++语言版)(第6版)
汤姆·索亚历险记 彩图注音版 一二三四年级5-6-7-8-9岁小学生课外阅读经典 儿童文学无障碍有声伴读世界名著童话故事
[美]马克 吐温
问题求解与程序设计(C++语言版)(第6版)
富兰克林自传 名家全译本 改变无数人命运的励志传奇 埃隆马斯克反复推荐 赠富兰克林签名照及精美插图
[美]本杰明·富兰克林 著;李自修 译
问题求解与程序设计(C++语言版)(第6版)
意大利文艺复兴新艺术史
[美]迈克尔·韦恩·科尔 著;[美]斯蒂芬·J·坎贝尔;邵亦杨
问题求解与程序设计(C++语言版)(第6版)
汤姆素亚历险记:中小学生课外阅读快乐读书吧 儿童文学无障碍有声伴读世界名著童话故事
[美]马克·吐温
问题求解与程序设计(C++语言版)(第6版)
老人与海 彩图注音版 一二三四年级5-6-7-8-9岁小学生课外阅读经典 儿童文学无障碍有声伴读世界名著童话故事
[美]海明威
问题求解与程序设计(C++语言版)(第6版)
养育的觉醒:全面激发孩子自驱力,教你如何心平气和做妈妈
[美]凯文·莱曼 著;唐晓璐 译;斯坦威 出品
问题求解与程序设计(C++语言版)(第6版)
国际大奖图画书系列 共11册(小老鼠的恐惧的大书,大灰狼,红豆与菲比,别烦我,下雪了 ,穿靴子的猫 ,先有蛋,绿 ,特别快递,如果你想看鲸鱼 ,一个部落的孩子 ) 麦克米伦世纪
[美]莱恩·史密斯 (英)埃米莉·格雷维特 (美)劳拉·瓦卡罗·等/文 (英)埃米莉·格雷维特 等/图 彭懿 杨玲玲 阿甲 孙慧阳 白薇 译