《程序设计实践》PDF下载

  • 购买积分:11 如何计算积分?
  • 作  者:刘瑞芳,肖波,徐雅静,许桂产,黄平牧编著
  • 出 版 社:北京:北京邮电大学出版社
  • 出版年份:2015
  • ISBN:9787563542901
  • 页数:288 页
图书介绍:本教材结合专业特色,设计了系统性、实用性强的综合案例。每个案例都是一个有实际应用方向的软件工程,涉及到知识不局限于计算机或编程知识,但任何应用项目都需要编程实现。根据C++程序设计课程和数据结构课程的知识体系,精心设计了11个综合案例,已经具备相关案例的讲义、大纲、学生作品等,经过大一、大二500多名学生的课程设计试用,效果良好。因此可以作为编写《程序设计实践》这门教材的基础。

第1章 绘图程序 1

1.1 项目分析和设计 2

1.1.1 需求分析 2

1.1.2 界面设计 2

1.1.3 总体设计 2

1.2 窗口程序基础知识 3

1.2.1 Windows API基础 3

1.2.2 资源文件 8

1.3 绘图基础知识 9

1.3.1 图形处理技术 9

1.3.2 图形设备接口GDI 11

1.4 绘图程序Draw的实现 21

1.4.1 基本图元类 21

1.4.2 绘图类 23

1.4.3 事件响应 27

1.4.4 钟表例子 29

深入思考 31

第2章 游戏程序 32

2.1 理论基础 32

2.1.1 相关数据结构 32

2.1.2 通用的系统函数 33

2.1.3 控制台相关的API 34

2.1.4 编程技巧 38

2.1.5 多线程编程 41

2.2 俄罗斯方块游戏的设计和实现 44

2.2.1 需求分析 44

2.2.2 系统设计 45

2.2.3 详细设计 45

2.2.4 游戏实现 49

深入思考 56

第3章 中文机械分词 57

3.1 项目分析和设计 57

3.1.1 需求分析 57

3.1.2 界面设计 58

3.1.3 总体设计 58

3.2 分词基础 59

3.2.1 分词技术概述 59

3.2.2 词散列表构建设计 61

3.2.3 散列函数设计 62

3.2.4 散列处理类设计 64

3.2.5 词库文件处理类设计 68

3.3 后向最大匹配分词算法设计 69

3.3.1 分词类设计 69

3.3.2 分词算法设计 70

3.4 基于MFC对话框的分词程序实现 72

3.4.1 建立工程 72

3.4.2 对话框界面的实现 76

深入思考 83

第4章 简单通信协议 85

4.1 项目分析和设计 85

4.1.1 需求分析 85

4.1.2 界面设计 86

4.2 通信协议基础知识 86

4.2.1 基本概念 86

4.2.2 Socket编程基础 89

4.3 SMTP 94

4.4 聊天程序的实现 99

4.4.1 总体设计 99

4.4.2 客户端的设计与实现 101

4.4.3 服务器端的设计与实现 105

深入思考 110

第5章 声音信号分析与处理 111

5.1 项目分析和设计 111

5.1.1 需求分析 111

5.1.2 界面设计 112

5.1.3 总体设计 114

5.2 理论基础 115

5.2.1 声音信号的数据结构 115

5.2.2 声音数据分析和处理 116

5.2.3 C++和Matlab混合编程 121

5.3 wavTool的设计与实现 125

5.3.1 wavTool的类关系图 125

5.3.2 自定义类CWaveFile 126

5.3.3 文档类CWaveDoc 137

5.3.4 视图类CWaveView 140

深入思考 144

第6章 图像处理程序 145

6.1 项目分析和设计 145

6.1.1 需求分析 145

6.1.2 界面设计 145

6.1.3 总体设计 145

6.2 BMP图像基础知识 146

6.2.1 图像基本概念 146

6.2.2 BMP图像基础 146

6.3 图像处理基础操作 149

6.3.1 BMP文件的打开与保存功能实现 149

6.3.2 BMP图像显示功能实现 152

6.3.3 图像处理类设计 153

6.4 简单图像处理程序的实现 163

6.4.1 绘图类 164

6.4.2 事件响应 166

6.4.3 消息响应函数 168

深入思考 172

第7章 学生信息管理 173

7.1 项目分析和设计 173

7.1.1 需求分析 173

7.1.2 界面设计 174

7.1.3 总体设计 174

7.2 数据库基础知识 176

7.2.1 关系数据库常用术语 177

7.2.2 关系数据库设计 178

7.2.3 数据库管理系统 179

7.2.4 SQL语言简介 181

7.3 数据库编程基础知识 182

7.3.1 数据库访问技术简介 182

7.3.2 MFC ODBC类简介 184

7.3.3 使用MFC ODBC类访问数据库 185

7.4 学生信息管理程序StudentInfo的实现 204

7.4.1 主界面的设计与实现 204

7.4.2 学生基本信息管理模块 206

7.4.3 课程基本信息管理模块 207

7.4.4 学生选课信息管理模块 209

7.4.5 学生成绩信息查询模块 210

深入思考 214

第8章 加密解密程序 215

8.1 加密技术简介 215

8.2 古典加密算法 216

8.2.1 凯撒密码 216

8.2.2 置换密码 218

8.3 对称密码DES 222

8.3.1 DES加密原理 222

8.3.2 DES算法的实现 224

8.4 非对称密码算法RSA 228

8.4.1 公钥密码体制 228

8.4.2 RSA加密原理 228

8.4.3 RSA加密算法的实现 229

8.5 消息摘要算法MD5 232

8.5.1 消息摘要算法 232

8.5.2 消息摘要算法MD5 233

8.5.3 MD5消息摘要算法的实现 236

8.6 时域隐藏算法LSB 240

8.6.1 信息隐藏技术 240

8.6.2 LSB算法 241

8.6.3 LSB算法的实现 241

深入思考 248

第9章 压缩编解码 249

9.1 Huffman压缩算法 249

9.1.1 Huffman编码 249

9.1.2 Huffman算法实现 250

9.2 基于字典的压缩算法 257

9.2.1 LZ77算法 257

9.2.2 LZ78算法 258

9.2.3 LZW算法 260

9.2.4 LZW算法实现 263

深入思考 269

第10章 通信编码 270

10.1 项目分析和设计 270

10.1.1 需求分析 270

10.1.2 系统设计 271

10.2 信源编码基础知识 273

10.2.1 0和1的世界 273

10.2.2 理解信源编码 274

10.3 信道编码基础知识 275

10.3.1 理解信道错误 275

10.3.2 理解信道编码 275

10.4 信道模拟和编解码程序的实现 278

10.4.1 类的设计 278

10.4.2 类的实现 279

10.4.3 信源编码和汉明码类的使用 283

深入思考 285

附录 报告书模板 286