《工程问题C++语言求解》PDF下载

  • 购买积分:14 如何计算积分?
  • 作  者:(美)DeloresM.Etter,(美)JeanineA.Ingber著
  • 出 版 社:北京:机械工业出版社
  • 出版年份:2014
  • ISBN:9787111459071
  • 页数:445 页
图书介绍:本书介绍了如何利用ANSI C++编程语言以基于对象的编程方式来解决工程问题。书中引用了大量来自于不同工程、科学和计算机科学领域的示例,是一本理论和实践结合紧密的教材。针对C++基本语法的各个部分,由浅入深地进行讲解。每讲解一部分基础知识,同时会结合多个相关实例,实例内容详实,紧贴所讲内容,使读者能够立刻对所学知识进行练习,实战性强。

第1章 计算与工程问题求解导论 1

1.1 历史回顾 1

1.2 现代工程成就 3

1.3 计算机系统 6

1.3.1 计算机硬件 6

1.3.2 计算机软件 6

1.4 数据表示与存储 9

1.4.1 数制 10

1.4.2 数据类型与存储 14

1.5 解决工程问题的方法论 16

本章小结 18

习题 19

第2章 简单的C+程序 22

工程挑战:汽车性能 22

2.1 程序结构 22

2.2 常量和变量 25

2.2.1 科学记数法 27

2.2.2 数值数据类型 27

2.2.3 布尔数据类型 28

2.2.4 字符数据类型 29

2.2.5 字符串数据 30

2.2.6 符号常量 31

2.3 C++类 31

2.3.1 类声明 32

2.3.2 类实现 32

2.4 C++操作符 34

2.4.1 赋值操作符 34

2.4.2 算术操作符 36

2.4.3 操作符的优先级 38

2.4.4 上溢和下溢 40

2.4.5 自增和自减操作符 40

2.4.6 缩写赋值操作符 41

2.5 标准输入和输出 42

2.5.1 cout对象 42

2.5.2 流对象 43

2.5.3 操纵符 44

2.5.4 cin对象 46

2.6 使用IDE构建C++解决方案:NetBeans 48

2.7 包含在C++标准库中的基本函数 55

2.7.1 基本的数学函数 55

2.7.2 三角函数 56

2.7.3 双曲函数 57

2.7.4 字符函数 58

2.8 解决应用问题:速率计算 59

2.9 系统限制 61

本章小结 62

习题 65

第3章 控制结构:选择 68

工程挑战:全球变化 68

3.1 算法设计 68

3.2 结构化编程 69

3.2.1 伪代码 70

3.2.2 可选方案的评估 71

3.3 条件表达式 71

3.3.1 关系操作符 71

3.3.2 逻辑操作符 72

3.3.3 优先级和结合性 74

3.4 选择语句:if语句 74

3.4.1 简单的if语句 75

3.4.2 if/else语句 76

3.5 数值方法:线性插值 79

3.6 解决应用问题:海水的冰点 81

3.7 选择语句:switch语句 85

3.8 使用IDE构建C++解决方案:NetBeans 87

3.9 为自定义数据类型定义操作符 93

本章小结 97

习题 98

第4章 控制结构:循环 101

工程挑战:数据收集 101

4.1 算法设计 101

4.2 循环结构 102

4.2.1 while循环 102

4.2.2 do/while循环 105

4.2.3 for循环 107

4.3 解决应用问题:GPS 110

4.4 break和continue语句 114

4.5 结构化输入循环 114

4.5.1 计数器控制循环 114

4.5.2 标志控制循环 116

4.5.3 数据终止循环 117

4.6 解决应用问题:气象气球 118

4.7 使用IDE构建C++解决方案:Microsoft Visual C++ 122

本章小结 128

习题 129

第5章 使用数据文件 132

工程挑战:天气预报 132

5.1 定义文件流 132

5.1.1 流的类层次 132

5.1.2 ifstream类 134

5.1.3 ofstream类 135

5.2 读取数据文件 137

5.2.1 指定记录的数目 137

5.2.2 标志信号 139

5.2.3 文件结束 141

5.3 生成数据文件 143

5.4 解决应用问题:数据过滤器——修改HTML文件 145

5.5 错误检查 148

5.6 数值方法:线性建模 154

5.7 解决应用问题:臭氧测量 156

本章小结 160

习题 162

第6章 使用函数进行模块化编程 166

工程挑战:仿真 166

6.1 模块化 166

6.2 自定义函数 168

6.2.1 函数定义 171

6.2.2 函数原型 175

6.3 参数传递 177

6.3.1 值传递 177

6.3.2 引用传递 179

6.3.3 存储类型和作用域 183

6.4 解决应用问题:计算重心 185

6.5 随机数 188

6.5.1 整数序列 188

6.5.2 浮点序列 192

6.6 解决应用问题:仪器可靠性 192

6.7 定义类方法 198

6.7.1 公共接口 198

6.7.2 访问方法 199

6.7.3 修改方法 200

6.8 解决应用问题:复合材料设计 204

6.9 数值方法:多项式的根 208

6.9.1 多项式的根 209

6.9.2 增量搜索方法 211

6.10 解决应用问题:系统稳定性 211

6.11 数值方法:积分 219

本章小结 222

习题 224

第7章 一维数组 229

工程挑战:海啸预警系统 229

7.1 数组 229

7.1.1 定义和初始化 230

7.1.2 伪代码 231

7.1.3 计算与输出 235

7.1.4 函数参数 238

7.2 解决应用问题:飓风等级 241

7.3 统计表征数 245

7.3.1 简单分析 246

7.3.2 方差和标准差 247

7.3.3 自定义头文件 249

7.4 解决应用问题:语音信号分析 250

7.5 排序和搜索算法 254

7.5.1 选择排序 254

7.5.2 搜索算法 256

7.5.3 无序列表 256

7.5.4 有序列表 257

7.6 解决应用问题:海啸预警系统 258

7.7 字符串 263

7.7.1 C风格字符串定义和1/O 263

7.7.2 字符串函数 265

7.8 string类 266

7.9 vector类 267

7.10 解决应用问题:概率计算 270

本章小结 280

习题 281

第8章 二维数组 285

工程挑战:地形导航 285

8.1 二维数组 285

8.1.1 声明和初始化 286

8.1.2 计算与输出 290

8.1.3 函数参数 292

8.2 解决应用问题:地形导航 297

8.3 二维数组和vector类 300

8.4 矩阵 303

8.4.1 行列式 304

8.4.2 转置 304

8.4.3 矩阵加法和减法 305

8.4.4 矩阵乘法 305

8.5 数值方法:解联立方程 307

8.5.1 图形分析 307

8.5.2 高斯消元法 309

8.6 解决应用问题:电路分析 311

8.7 高维数组 316

本章小结 317

习题 318

第9章 指针 322

工程挑战:天气模式 322

9.1 地址与指针 322

9.1.1 地址操作符 323

9.1.2 指针的分派 324

9.1.3 指针的算术 326

9.2 指向数组元素的指针 329

9.2.1 一维数组 329

9.2.2 字符串 331

9.2.3 指针作为函数参数 332

9.3 解决应用问题:厄尔尼诺南方涛动数据 336

9.4 动态内存分配 338

9.4.1 new操作符 338

9.4.2 动态分配数组 339

9.4.3 delete操作符 339

9.5 解决应用问题:地震监测 340

9.6 使用new和delete的常见错误 345

9.7 链式数据结构 346

9.7.1 链表 346

9.7.2 栈 348

9.7.3 队列 348

9.8 C++标准模板库 349

9.8.1 list类 349

9.8.2 stack类 350

9.8.3 queue类 352

9.9 解决应用问题:文本文件的索引 353

本章小结 357

习题 358

第10章 高级主题 361

工程挑战:人工智能 361

10.1 泛型编程 361

10.2 数据抽象 365

10.2.1 操作符重载 365

10.2.2 像素类 365

10.2.3 算术操作符 367

10.2.4 友元函数 371

10.2.5 验证对象 374

10.2.6 按位操作符 378

10.3 解决应用问题:彩色图像处理 380

10.4 递归 385

10.4.1 阶乘函数 385

10.4.2 斐波纳契序列 387

10.4.3 BinaryTree类 388

10.5 类模板 396

10.6 继承 401

10.6.1 Rectangle类 401

10.6.2 Square类 404

10.6.3 Cube类 406

10.7 虚方法 409

10.8 解决应用问题:可重复的囚徒困境 411

本章小结 418

习题 419

附录A C++标准库 422

附录B ASCII字符编码 430

附录C使用MATLAB从ASCIl文件中绘制数据点 434

附录D练习答案 437

附录E参考文献 445