《程序设计基础视频教程》PDF下载

  • 购买积分:11 如何计算积分?
  • 作  者:王兴晶,管海涛等编著
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2005
  • ISBN:712101226X
  • 页数:258 页
图书介绍:本书以通俗、简明的语言,由浅入深地讲解了开发Windows应用程序的基础知识,从计算机中的数和编码系统到软件工程,从算法到软件项目管理,从软件测试到文档编写等,涵盖了编程最常用的知识,力求内容典型、详略得当。书中提供的习题可以检验读者对所学知识的掌握程度,并进一步提高编程的水平,得心应手地解决实际问题。

第1章 软件的诞生与发展 1

1.1 软件的诞生 2

1.1.1 计算机的诞生 2

1.1.2 软件概念的出现与发展 3

1.2 程序设计语言 4

1.2.1 低级语言 4

1.2.2 高级语言 5

1.2.3 系统软件 9

1.3 软件工程 14

1.3.1 软件开发模型 14

1.3.2 软件开发方法 16

1.3.3 软件开发环境 18

1.3.4 软件技术回顾 19

1.4 常用的软件开发工具 19

1.4.1 Visual Basic开发工具 19

1.4.2 Visual C++开发工具 20

1.4.3 Java开发工具 21

1.4.4 Delphi开发工具 21

1.5 习题 22

1.5.1 简答题 22

第2章 计算机中信息的表示 23

2.1 常用数制及其相互转换 24

2.1.1 十进制数 24

2.1.2 二进制数 25

实例1:把二进制数1101.11转换成十进制数 26

实例2:把十进制数37转换成二进制数 26

实例3:把(0.6875)10转换成二进制数 27

2.1.3 八进制数 27

实例4:把(11101)2转换成八进制数 28

实例5:把(11101.1101)2转换成八进制数 28

实例6:将(56.103)8转换为二进制数 28

实例7:把(1111100111.111111)2转换成十六进制数 29

2.1.4 十六进制 29

实例8:把(3AD.B8)16转换成二进制数 30

2.1.5 其他进制数与十进制数之间的转换 30

实例9:把(17.26)8转换成十进制数 30

实例10:把(65535)10转换成十六进制数(辗转除以16取余) 30

2.2 计算机中数的表示 31

2.2.1 原码,反码和补码 31

实例11:已知X=6,Y=2,求X-Y 32

实例12:已知X=-19,Y=-30,求X+Y 33

2.2.2 数的定点和浮点表示 33

2.3 字符与汉字的编码 35

2.3.1 字符的编码 35

2.3.2 汉字的编码 37

实例13:将汉字“玻”的区位码转换成机内码 37

2.4 习题 38

2.4.1 简答题 38

第3章 数据名称 39

3.1 命名规则 40

3.2 给数据选择合适的名称 40

3.2.1 命名时要考虑的最重要问题 41

3.2.2 最佳名称长度 41

3.2.3 变量名中的反义词 42

3.3 特定数据类型命名 42

3.3.1 循环变量命名 42

3.3.2 状态变量命名 43

3.3.3 临时变量命名 44

3.3.4 逻辑变量命名 44

3.4 命名约定 45

3.5 应避免的名称 47

第4章 程序流程图的绘制 49

4.1 用流程图表示算法 50

4.1.1 流程图符号 50

4.1.2 流程图的三种基本结构 51

4.2 Visio 2003绘制流程图 52

4.2.1 绘制基本流程图 52

4.2.2 设置流程图元素的名称 54

4.2.3 为流程图加上编号 55

4.2.4 加入商用背景 56

4.2.5 加入配色方案 57

4.2.6 绘制一个完整的流程图 58

第5章 结构化程序设计 65

5.1 顺序程序设计 66

实例14:输入三角形的三边长,求三角形面积 66

实例15:求ax2+bx+c=0方程的根 67

5.2 选择(分支)结构程序设计 67

5.2.1 关系运算符和关系表达式 68

5.2.2 逻辑运算符和逻辑表达式 69

5.2.3 if语句 71

实例16:嵌套if语句的应用 73

5.2.4 switch语句 74

实例17:运输公司对用户计算运费 75

5.3 循环结构程序设计 76

5.3.1 while语句(当型循环) 76

实例18:利用while语句,编写程序计算1+2+3+…+100 77

实例19:利用while语句,计算1+1/2+1/4+…+1/50 79

5.3.2 do-while语句(直到型循环) 79

实例20:利用do-while语句计算1+1/2+1/4+…+1/50 80

5.3.3 for语句(当型循环) 80

实例21:编写程序,计算半径分别为0.5、1.5、2.5、3.5、4.5、5.5 mm时圆的半径 82

实例22:求正整数n的阶乘n!,其中n由用户输入 82

5.3.4 几种循环的比较 84

实例23:将50~100之间不能被3整除的数输出(用三种循环结构实现) 85

实例24:从键盘输入一个大于2的整数n,判断其是否为是不是素数 85

5.4.1 选择题 87

5.4 习题 87

5.4.2 编程题 88

第6章 数据结构中的线性表 89

6.1 为什么要学习数据结构 90

6.2 有关概念和术语 91

6.3 线性表 92

6.3.1 线性表的定义 93

6.3.2 线性表的基本操作 93

6.4 线性表的顺序存储及运算实现 94

6.4.1 顺序表上基本运算的实现 95

6.4.2 顺序表应用——划分 98

6.4.3 顺序表应用——合并与排序 99

6.4.4 顺序表的优缺点 100

6.5 线性表的单链表存储和运算 100

6.5.1 单链表 100

6.5.2 单链表上基本运算的实现 101

6.5.3 单链表应用举例 106

6.5.4 循环链表 107

6.6 双向链表 108

6.6.1 双向链表上插入的实现 109

6.6.2 双向链表上删除的实现 109

6.6.3 选择链表还是顺序表 110

6.7 习题 110

6.7.1 填空题 110

6.7.2 简答题 111

6.7.3 编程题 111

第7章 数据结构中的栈和队列 113

7.1 栈 114

7.1.1 栈的定义 114

7.1.2 栈的基本运算 114

7.1.3 顺序栈及运算 115

7.1.4 顺序栈操作的注意事项 117

7.1.5 链栈及运算 117

实例25:数制转换问题 119

7.1.6 栈的应用举例 119

实例26:栈与递归 120

7.2 队列 121

7.2.1 队列上进行的基本操作 122

7.2.2 顺序队的存储及运算 122

7.2.3 链队 126

7.3 习题 128

7.3.1 填空题 128

7.3.2 编程题 128

第8章 数据结构中的二叉树 129

8.1 二叉树的概念 130

8.1.1 二叉树的相关概念 130

8.1.2 链式存储结构 133

8.1.3 二叉树的基本操作及实现 135

8.2.1 二叉树的遍历方法及递归实现 137

8.2 二叉树的遍历 137

8.2.2 由遍历序列恢复二叉树 139

8.3 二叉树的应用 141

8.3.1 查找数据元素 141

8.3.2 统计出给定二叉树中叶子节点的数目 141

8.4 习题 142

8.4.1 填空题 142

8.4.2 简答题 142

第9章 常用的程序设计算法 143

9.1 算法的概念 144

9.1.1 算法的直观认识 144

9.1.2 算法的特征 145

9.1.3 Algorithm(算法)一词的由来 146

9.1.4 算法的表示方法 146

实例27:求三个数中的最大值 147

实例28:百钱买百鸡问题 147

实例29:算法的时间复杂性 148

9.1.5 算法分析 148

实例30:空间复杂性 149

9.2 查找 150

9.2.1 基本概念与术语 150

9.2.2 静态查找表 152

实例31:顺序查找 152

实例32:有序表的折半查找 153

9.2.3 动态查找表 156

实例33:二叉排序树插入操作和构造二叉排序树 157

9.2.4 哈希表查找(杂凑法) 159

实例34:哈希表 159

实例35:常用的哈希函数——直接定址法 160

实例36:常用的哈希函数——除留余数法 160

实例37:常用的哈希函数——数字分析法 161

实例38:常用的哈希函数——折叠法 161

实例39:处理冲突——开放定址法之线性探测法 162

9.3.1 基本概念 163

实例40:处理冲突——开放定址法之二次探测法 163

9.3 排序 163

9.3.2 插入排序 164

实例41:直接插入排序 165

实例42:折半插入排序 166

实例43:表插入排序的重排 170

实例44:希尔排序(Shells Sort) 171

9.3.3 快速排序 173

实例45:非递归算法实现的快速排序 173

实例46:递归算法实现的快速排序 174

9.3.4 选择排序 175

实例47:简单选择排序 175

9.4 几个有趣的算法 177

9.4.1 汉诺塔的算法 177

实例48:汉诺塔 177

实例49:斐波那契数列 180

9.4.2 斐波那契数列的算法 180

9.4.3 杨辉三角的算法 182

实例50:杨辉三角 182

第10章 数据库程序设计基础 185

10.1 数据库简介 186

10.1.1 历史上的数据库 186

10.1.2 数据库的构成 187

10.1.3 查询和索引 189

10.1.4 为什么要使用索引 189

10.1.5 索引的原理 190

10.1.6 主键 190

实例51:创建Access数据库Info.mdb 191

实例52:建立表之间的关系 196

10.1.7 ODBC数据源 198

实例53:建立连接到info..mdb的ODBC数据源 199

10.2.1 最常用Select语句 202

10.2 从数据库中获取所需的部分数据 202

实例54:创建查询查看Select语句执行结果 203

实例55:组合式的字段列表 205

实例56:给字段起别名 205

10.2.2 带条件表达式的Select语句 206

实例57:模糊查找 207

实例58:使用“Where字段名称Between值1And值2”格式 208

实例59:使用“Where字段名称In(值1,值2,…)”格式 208

实例61:按照多个字段排序 209

10.2.3 具有排序功能的Select语句 209

实例60:按照某个字段排序 209

实例62:按照字段的降序排序 210

10.2.4 表之间的连接 211

实例63:从两个有关系的表中筛选数据 211

10.3 选取合适的数据库应用程序开发工具 212

10.3.1 几种编程语言的数据库性能比较 212

10.3.2 选择开发工具的几点建议 213

第11章 网络编程基础 215

11.1 计算机网络的发展 216

11.1.1 计算机网络发展的阶段划分 216

11.1.2 计算机网络的定义 219

11.1.3 计算机网络的发展方向 219

11.2 计算机网络的设备和分类 220

11.2.1 常用的计算机网络设备 220

11.2.2 计算机网络的分类 222

11.3 网络服务和相关概念 225

11.3.1 常用的网络服务 225

11.3.2 IP地址 228

113.3 子网掩码 230

11.3.4 网关 230

11.3.5 域名 231

11.4 OSI模型 231

11.4.1 物理层 232

11.4.2 数据链路层 232

11.4.3 网络层 233

11.4.4 传输层 234

11.4.5 会话层 234

11.4.6 表示层 235

11.4.7 应用层 235

11.5 通信协议 235

11.5.1 协议的关键 235

11.5.2 标准 236

11.5.3 TCP/IP协议 238

11.5.4 TCP/IP模型 238

11.5.5 了解TCP/IP核心协议 241

11.5.6 Windows Sockets简介 245

11.6 开启WWW服务 246

11.6.1 搭建运行平台 246

11.6.2 制作自己的动态网页 249

11.6.3 WWW服务的相关技术 250

附录A 习题答案 251