出版者的话译者序前言章 计算与工程问题求解导论 1.1 历史回顾 1.2 现代工程成就 1.3 计算机系统 1.3.1 计算机硬件 1.3.2 计算机软件 1.4 数据表示与存储 1.4.1 数制 1.4.2 数据类型与存储 1.5 解决工程问题的方 本章小结 习题第2章 简单的C 程序 工程挑战:汽车性能 2.1 程序结构 2.2 常量和变量 2.2.1 科学记数法 2.2.2 数值数据类型 2.2.3 布尔数据类型 2.2.4 字符数据类型 2.2.5 字符串数据 2.2.6 符号常量 2.3 C 类 2.3.1 类声明 2.3.2 类实现 2.4 C 操作符 2.4.1 赋值操作符 2.4.2 算术操作符 2.4.3 操作符的优先级 2.4.4 上溢和下溢 2.4.5 自增和自减操作符 2.4.6 缩写赋值操作符 2.5 标准输入和输出 2.5.1 cout对象 2.5.2 流对象 2.5.3 操纵符 2.5.4 cin对象 2.6 使用IDE构建C 解决方案:NetBeans 2.7 包含在C 标准库中的基本函数 2.7.1 基本的数学函数 2.7.2 三角函数 2.7.3 双曲函数 2.7.4 字符函数 2.8 解决应用问题:速率计算 2.9 系统限制 本章小结 习题第3章 控制结构:选择 工程挑战:全球变化 3.1 算法设计 3.2 结构化编程 3.2.1 伪代码 3.2.2 可选方案的评估 3.3 条件表达式 3.3.1 关系操作符 3.3.2 逻辑操作符 3.3.3 优先级和结合性 3.4 选择语句:if语句 3.4.1 简单的if语句 3.4.2 if/else语句 3.5 数值方法:线性插值 3.6 解决应用问题:海水的冰点 3.7 选择语句:switch语句 3.8 使用IDE构建C 解决方案:NetBeans 3.9 为自定义数据类型定义操作符 本章小结 习题第4章 控制结构:循环 工程挑战:数据收集 4.1 算法设计 4.2 循环结构 4.2.1 while循环 4.2.2 do/while循环 4.2.3 for循环 4.3 解决应用问题:GPS 4.4 break和continue语句 4.5 结构化输入循环 4.5.1 计数器控制循环 4.5.2 标志控制循环 4.5.3 数据终止循环 4.6 解决应用问题:气象气球 4.7 使用IDE构建C 解决方案:MicrosoftVisualC 本章小结 习题第5章 使用数据文件 工程挑战:天气预报 5.1 定义文件流 5.1.1 流的类层次 5.1.2 ifstream类 5.1.3 ofstream类 5.2 读取数据文件 5.2.1 指定记录的数目 5.2.2 标志信号 5.2.3 文件结束 5.3 生成数据文件 5.4 解决应用问题:数据过滤器——修改HTML文件 5.5 错误检查 5.6 数值方法:线性建模 5.7 解决应用问题:臭氧测量 本章小结 习题第6章 使用函数进行模块化编程 工程挑战:仿真 6.1 模块化 6.2 自定义函数 6.2.1 函数定义 6.2.2 函数原型 6.3 参数传递 6.3.1 值传递 6.3.2 引用传递 6.3.3 存储类型和作用域 6.4 解决应用问题:计算重心 6.5 数 6.5.1 整数序列 6.5.2 浮点序列 6.6 解决应用问题:仪器可靠性 6.7 定义类方法 6.7.1 公共接口 6.7.2 访问方法 6.7.3 修改方法 6.8 解决应用问题:复合材料设计 6.9 数值方法:多项式的根 6.9.1 多项式的根 6.9.2 增量搜索方法 6.10 解决应用问题:系统稳定性 6.11 数值方法:积分 本章小结 习题第7章 一维数组 工程挑战:海啸预警系统 7.1 数组 7.1.1 定义和初始化 7.1.2 伪代码 7.1.3 计算与输出 7.1.4 函数参数 7.2 解决应用问题:飓风等级 7.3 统计表征数 7.3.1 简单分析 7.3.2 方差和标准差 7.3.3 自定义头文件 7.4 解决应用问题:语音信号分析 7.5 排序和搜索算法 7.5.1 选择排序 7.5.2 搜索算法 7.5.3 无序列表 7.5.4 有序列表 7.6 解决应用问题:海啸预警系统 7.7 字符串 7.7.1 C风格字符串定义和I/O 7.7.2 字符串函数 7.8 string类 7.9 vector类 7.10 解决应用问题:概率计算 本章小结 习题第8章 二维数组 工程挑战:地形导航 8.1 二维数组 8.1.1 声明和初始化 8.1.2 计算与输出 8.1.3 函数参数 8.2 解决应用问题:地形导航 8.3 二维数组和vector类 8.4 矩阵 8.4.1 行列式 8.4.2 转置 8.4.3 矩阵加法和减法 8.4.4 矩阵乘法 8.5 数值方法:解联立方程 8.5.1 图形分析 8.5.2 高斯消元法 8.6 解决应用问题:电路分析 8.7 高维数组 本章小结 习题第9章 指针 工程挑战:天气模式 9.1 地址与指针 9.1.1 地址操作符 9.1.2 指针的分派 9.1.3 指针的算术 9.2 指向数组元素的指针 9.2.1 一维数组 9.2.2 字符串 9.2.3 指针作为函数参数 9.3 解决应用问题:厄尔尼诺南方涛动数据 9.4 动态内存分配 9.4.1 new操作符 9.4.2 动态分配数组 9.4.3 delete操作符 9.5 解决应用问题:地震监测 9.6 使用new和delete的常见错误 9.7 链式数据结构 9.7.1 链表 9.7.2 栈 9.7.3 队列 9.8 C 标准模板库 9.8.1 list类 9.8.2 stack类 9.8.3 queue类 9.9 解决应用问题:文本文件的索引 本章小结 习题0章 高级主题 工程挑战:人工智能 10.1 泛型编程 10.2 数据抽象 10.2.1 操作符重载 10.2.2 像素类 10.2.3 算术操作符 10.2.4 友元函数 10.2.5 验证对象 10.2.6 按位操作符 10.3 解决应用问题:彩色图像处理 10.4 递归 10.4.1 阶乘函数 10.4.2 斐波纳契序列 10.4.3 BinaryTree类 10.5 类模板 10.6 继承 10.6.1 Rectangle类 10.6.2 Square类 10.6.3 Cube类 10.7 虚方法 10.8 解决应用问题:可重复的囚徒困境 本章小结 习题附录A C 标准库附录B ASCII字符编码附录C 使用MATLAB从ASCII文件中绘制数据点附录D 练习答案附录E 参考文献 |