第1章 程序设计的基本要求 1
1.1 程序设计的基本概念和一般步骤 1
1.1.1 什么是程序设计 1
1.1.2 程序设计的一般步骤 2
1.2 程序的质量 6
1.2.1 程序的正确性与可靠性 7
1.2.2 程序的简明性 7
1.2.3 程序的有效性 9
1.2.4 程序的可维护性 10
1.2.5 程序的适应性 11
1.3 实践——学习程序设计的重要环节 13
练习题 15
第2章 程序设计的基本方法 17
2.1 结构化程序设计方法 17
2.1.1 结构化程序设计方法的提出 17
2.1.2 结构化程序的基本结构 19
2.1.3 自顶向下和逐步细化的设计方法 31
2.2 模块化程序设计方法 33
2.2.1 模块的划分 34
2.2.2 模块之间的结构 36
2.3 程序设计的风格 37
2.3.1 什么是程序的风格 37
2.3.2 设计的风格 38
2.3.3 语言运用的风格 39
2.3.4 程序正文表示的风格 42
2.3.5 输入输出的方式与格式 46
2.4 程序设计举例 47
练习题 60
第3章 常用算法与数据结构 62
3.1 常用算法概要 62
3.1.1 计算机算法及其描述 62
3.1.2 数值计算中的常用算法 67
3.2 基本数据结构 76
3.2.1 线性表及其顺序存储结构 76
3.2.2 线性表的链式存储结构——链表 78
3.2.3 栈和队列 80
3.2.4 数组与矩阵的压缩存储 83
3.2.5 二叉树的基本概念 87
3.3 常用的查找与排序方法 93
3.3.1 基本查找方法 93
3.3.2 常用排序方法 97
3.4 程序例 105
练习题 127
第4章 程序的调试与测试 130
4.1 程序的调试 130
4.1.1 程序调试的一般步骤 130
4.1.2 程序调试的实验方法 136
4.1.3 程序调试的推理技术 139
4.2 程序的测试 141
4.2.1 程序测试的基本概念 141
4.2.2 程序测试的常用方法 145
4.2.3 程序测试的层次 149
练习题 156
第5章 线性电路求解及计算机辅助分析简介 159
5.1 基础部分 159
5.1.1 基本定律 159
5.1.2 线性电路的基本分析方法 161
5.1.3 例题分析 162
5.2 网络图论和网络方程 166
5.2.1 网络图论的一些基本概念 166
5.2.2 支路约束及基尔霍夫定律的矩阵形式 168
5.2.3 节点法 170
5.2.4 改进节点法 171
5.2.5 例题分析 171
5.3 建立节点电压方程的关联矩阵法 177
5.4 建立节点电压方程的直接法 180
练习题 184
第6章 非线性电阻电路的数值求解方法 189
6.1 非线性电阻元件及电路方程的列写 189
6.1.1 非线性电阻元件 189
6.1.2 非线性电阻电路的方程 189
6.2 非线性方程和非线性方程组的求解 191
6.2.1 非线性方程的求解——牛顿迭代法 191
6.2.2 非线性方程组的求解——牛顿-拉夫逊法 193
6.3 用友网络模型法求解非线性电阻电路 194
练习题 195
第7章 一般工程领域应用问题的程序设计 197
7.1 一般科学计算问题的程序设计 197
7.1.1 实例之一:公式计算 197
7.1.2 实例之二:求解方程的根 200
7.1.3 实例之三:求解代数方程组 205
7.1.4 实例之四:求解微分方程 209
7.2 数据处理方面的程序设计 212
7.2.1 数据的输入 212
7.2.2 均值和方差 213
7.2.3 频数分布与累计频数分布 214
7.2.4 工程上的曲线拟合问题 215
7.2.5 数据库与数据管理 217
7.3 应用问题计算程序的一般结构 219
7.3.1 子程序 219
7.3.2 主程序 219
7.4 原始数据的处理 221
练习题 224
主要参考文献 229