注册 登录 进入教材巡展
#

出版时间:2017年2月

出版社:清华大学出版社

以下为《程序设计基础(第4版)》的配套数字资源,这些资源在您购买图书后将免费附送给您:
  • 清华大学出版社
  • 9787302454014
  • 4-1
  • 186179
  • 16开
  • 2017年2月
  • 工学
  • 软件工程
  • TP311.1
  • 计算机
  • 本专科、高职高专
内容简介
  本书以程序设计的分析问题和解决问题为重点,讲授在C/C 语言环境下程序设计的解题思路、算法设计和程序实现,可帮助读者提高编程能力和上机解题能力。全书语言简洁,示例丰富,深入浅出地引导读者理性思维和理性实践,章节结构安排合理,教学方法引人入胜,便于读者自学。本书可作为高等院校计算机相关专业程序设计课程的教材,亦可供从事计算机、自动化及其他相关领域的科研技术人员参考。
目录
目录
第1章  绪论          1
第2章  编程准备          4
2.1  程序编写        4
2.1.1 
用Visual C 6.0编写程序        4
2.1.2 
使用Dev-C 开发程序      8
2.2  程序代码及说明   14
2.3  输出流对象cout   15
2.4  程序注释        16
2.5  算术运算符   16
2.6  数学函数        17
2.7  小结        17
习题         17
第3章  代数思维与计算机解题          19
3.1  程序的基本结构   19
3.2  变量与数据类型   21
3.2.1 
变量的基本概念         21
3.2.2 
数据类型与变量的地址空间    22
3.3  定义变量和赋初值        22
3.4  变量赋值        23
3.4.1 
赋值符号与赋值表达式    23
3.4.2 
变量赋值的5要素     24
3.5  指针变量        25
3.5.1 
指针定义与初始化    25
3.5.2 
指针赋值    26
3.5.3 
在赋值语句中使用间接访问运算符         26
3.6  小结        27
习题         28
第4章  逻辑思维与计算机解题          29
4.1  关系运算和关系表达式        30
4.1.1 
关系运算符         30
4.1.2 
关系表达式的一般格式    30
4.1.3 
将“是”“否”写成关系表达式       30
4.2  枚举法的思路        31
4.3  循环结构        33
4.3.1 
使用循环结构的部分程序         33
4.3.2 
for语句的格式和执行过程       33
4.3.3 
使用for循环解题实例      34
4.3.4 
for循环的程序框图   36
4.4  分支结构        36
4.4.1 
if语句的格式      37
4.4.2 
分支结构的实例         38
4.5  任务4.1的程序框图     39
4.6  任务4.1的参考程序     40
4.7  逻辑问题及其解法        41
4.7.1 
逻辑运算符与逻辑表达式         42
4.7.2 
逻辑问题的解题思路         43
4.7.3 
任务4.2的参考程序 47
4.8  小结        48
课后阅读材料         48
习题         53
第5章  函数思维与模块化设计          55
5.1  函数        55
5.1.1 
函数的说明         56
5.1.2 
函数的定义         56
5.1.3 
函数的返回值    56
5.1.4 
函数的调用         57
5.1.5 
形式参数和实在参数         57
5.1.6 
调用和返回         58
5.1.7 
带自定义函数的程序设计         58
5.2  编程实例1     60
5.3  编程实例2     61
5.4  几种参数传递方式的比较   63
5.5  小结        66
习题         66
第6章  数据的组织与处理(1)—— 数组     69
6.1  数组        69
6.1.1 
一维数组的定义         71
6.1.2 
数组初始化         71
6.1.3 
字符数组的定义、初始化和赋值    72
6.1.4 
数组与指针         75
6.2  筛法        77
6.3  线性查找与折半查找   78
6.4  冒泡排序法   80
6.5  递推        82
6.5.1 
递推数列的定义         82
6.5.2 
递推算法的程序实现         83
6.6  字符数组应用        86
6.7  函数跳转表   91
6.8  二维数组        93
6.8.1 
二维数组的定义         94
6.8.2 
二维数组的初始化    95
6.8.3 
二维数组中的元素存放顺序    95
6.9  小结        97
课后阅读材料         98
习题         102
第7章  数据的组织与处理(2)—— 结构     105
7.1  结构与结构数组   105
7.1.1 
结构体类型的定义    105
7.1.2 
结构体变量的定义和引用         106
7.1.3 
结构体变量的初始化         107
7.1.4 
结构数组    108
7.2  指针和结构   110
7.3  链表        111
7.3.1 
建立链表的过程         112
7.3.2 
链表结点的插入与删除    116
7.3.3 
循环链表    124
7.4  小结        128
习题         128
第8章  数据的组织与处理(3)—— 文件     130
8.1  将数据保存到文件        130
8.2  从文件中读取数据        132
8.3  利用输入输出文件解交互类型的题   135
8.4  小结        145
习题         145
第9章  递归思想与相应算法     146
9.1  递归及其实现        146
9.2  递归算法举例        153
9.2.1 
计算组合数         153
9.2.2 
快速排序    154
9.2.3 
数字旋转方阵    158
9.2.4 
下楼问题    162
9.2.5 
跳马问题    164
9.2.6 
分书问题    166
9.2.7 
八皇后问题         169
9.2.8 
青蛙过河    172
9.3  小结        177
课外阅读材料         177
习题         181
第10章  多步决策问题       182
10.1 
多步决策问题的解题思路 182
10.1.1 
人鬼渡河的任务与规则要点  182
10.1.2 
人鬼渡河的安全性考虑  183
10.1.3 
安全状态的描述       183
10.2 
安全条件形式化 184
10.3 
从状态图上研究怎样一步一步过河 186
10.4 
多步决策问题的编程思路 186
10.5 
小结      189
习题         189
第11章  宽度优先搜索       191
11.1 
骑士聚会问题      191
11.2 
解题思路      196
11.3 
小结      202
习题         203
第12章  深度优先搜索       204
12.1 
问题描述      204
12.2 
解题思路      205
12.3 
深度优先搜索与剪枝 211
12.4 
小结      216
习题         216
第13章  贪心法   217
13.1 
贪心法解题的一般步骤      217
13.1.1 
装船问题  217
13.1.2 
事件序列问题  220
13.1.3 
贪心法解题的一般步骤  222
13.2 
贪心法相关理论 223
13.2.1 
多阶段决策问题、无后向性与最优化原理  223
13.2.2 
有向图最短路径的Dijkstra算法    223
13.2.3 
贪心法解题的注意事项  227
13.3 
小结      228
习题         228
第14章  动态规划       230
14.1 
最短路径问题      230
14.1.1 
问题描述  230
14.1.2 
分析与题解       231
14.2 
动态规划的基本概念 234
14.3 
动态规划思想      235
14.4 
举例说明动态规划思路      237
14.5 
小结      244
习题         244
第15章  蒙特卡罗法   246
15.1 
伪随机数的产生 246
15.1.1 
产生随机整数  246
15.1.2 
产生随机小数  247
15.2 
伪随机数的应用 248
15.2.1 
求π的近似值  248
15.2.2 
计算图形面积  249
15.3 
小结      250
习题         250
附录A  程序调试 251
A.1  计分程序的调试   251
A.1.1 
编译时的调试    252
A.1.2 
运行时的调试    254
A.1.3 
其他调试相关知识    259
A.2  跳马程序的调试   260
附录B  库函数      267
B.1  数学函数        267
B.2  字符判断函数        268
B.3  字符串相关函数   271
附录C  ASCII码表         277
附录D  输入输出的格式控制     278
D.1  流的概念与输入输出格式   278
D.2  改变整数的进制   278
D.3  设置浮点数的精度       279
D.4  设置输入输出宽度       280
D.5  设置对齐方式和填充字符   281
D.6  其他设置       282
参考文献         284