第1章绘图程序1
1.1项目分析和设计1
1.1.1需求分析1
1.1.2界面设计1
1.1.3总体设计2
1.2窗口程序基础知识3
1.2.1Windows API基础3
1.2.2资源文件8
1.3绘图基础知识9
1.3.1图形处理技术9
1.3.2图形设备接口GDI11
1.4绘图程序Draw的实现21
1.4.1基本图元类21
1.4.2绘图类23
1.4.3事件响应27
1.4.4钟表例子29
1.5案例拓展31
1.5.1项目创建31
1.5.2界面和代码的关联32
1.5.3绘图参数设置34
1.5.4绘图类设计34
第2章中文分词37
2.1项目分析和设计37
2.1.1需求分析37
2.1.2界面设计38
2.1.3总体设计38
2.2分词基础39
2.2.1分词技术概述39
2.2.2词散列表构建设计41
2.2.3散列函数设计42
2.2.4散列处理类设计44
2.2.5词库文件处理类设计48
2.3后向匹配分词算法设计49
2.3.1分词类设计49
2.3.2分词算法设计50
2.4基于MFC 对话框的分词程序实现52
2.4.1建立工程52
2.4.2对话框界面的实现56
2.5案例拓展63
2.5.1隐马尔科夫模型63
2.5.2HMM中文分词程序的实现64
第3章学生信息管理76
3.1项目分析和设计76
3.1.1需求分析76
3.1.2界面设计77
3.1.3总体设计77
3.2数据库基础知识79
3.2.1关系数据库常用术语79
3.2.2数据库管理系统81
3.2.3SQL语言简介83
3.3数据库编程基础知识83
3.3.1数据库访问技术简介83
3.3.2MFC ODBC类简介85
3.3.3使用MFC ODBC类访问数据库86
3.4学生信息管理程序StudentInfo的实现100
3.4.1主界面的设计与实现100
3.4.2学生基本信息管理模块103
3.4.3课程基本信息管理模块103
3.4.4学生选课信息管理模块105
3.4.5学生成绩信息查询模块106
3.5案例拓展111
第4章简单通信协议116
4.1项目分析和设计116
4.1.1需求分析116
4.1.2界面设计117
4.2通信协议基础知识117
4.2.1基本概念117
4.2.2Sockets编程基础120
4.2.3SMTP125
4.3聊天程序的设计与实现130
4.3.1总体设计130
4.3.2客户端的设计与实现132
4.3.3服务器端的设计与实现136
4.4案例拓展141
4.4.1多人聊天室总体设计141
4.4.2多线程的概念142
4.4.3多人聊天室编程实现143
第5章声音信号分析与处理147
5.1项目分析和设计147
5.1.1需求分析147
5.1.2界面设计148
5.1.3总体设计150
5.2信号处理基础知识151
5.2.1声音信号的数据结构151
5.2.2音频数据分析和处理152
5.2.3C 和Matlab混合编程157
5.3wavTool的设计与实现161
5.3.1wavTool的类关系图161
5.3.2自定义类CWaveFile162
5.3.3文档类CWaveDoc173
5.3.4视图类CWaveView176
第6章图像处理180
6.1项目分析和设计180
6.1.1需求分析180
6.1.2界面设计180
6.1.3总体设计180
6.2BMP图像基础知识181
6.2.1图像基本概念181
6.2.2BMP图像基础181
6.3图像处理基础操作184
6.3.1BMP文件的打开与保存功能实现184
6.3.2BMP图像显示功能实现187
6.3.3图像处理类设计188
6.4简单图像处理程序的实现198
6.4.1绘图类199
6.4.2事件响应201
6.4.3消息响应函数203
第7章通信编解码算法208
7.1项目分析和设计208
7.1.1需求分析208
7.1.2系统设计209
7.2信源编码基础知识210
7.2.10和1的世界210
7.2.2理解信源编码212
7.3信道编码基础知识219
7.3.1理解信道错误219
7.3.2理解信道编码220
7.4通信模拟程序的实现223
7.4.1类的设计223
7.4.2类的实现224
第8章加密解密算法231
8.1古典加密算法232
8.1.1凯撒密码原理232
8.1.2凯撒密码实现232
8.2对称密码DES234
8.2.1DES加密原理234
8.2.2DES算法的实现237
8.3非对称密码算法RSA240
8.3.1公钥密码体制240
8.3.2RSA加密原理241
8.3.3RSA加密算法的实现241
8.4消息摘要算法MD5245
8.4.1消息摘要算法245
8.4.2消息摘要算法MD5246
8.4.3MD5消息摘要算法的实现249
8.5时域隐藏算法LSB253
8.5.1信息隐藏技术253
8.5.2LSB算法253
8.5.3LSB算法的实现254
8.6加密算法演示程序261
8.6.1总体设计261
8.6.2实现代码262
第9章基于大数据的电影推荐267
9.1项目分析和设计268
9.1.1需求分析268
9.1.2总体设计270
9.2大数据基础271
9.2.1大数据应用271
9.2.2大数据并行处理平台274
9.3推荐算法基础278
9.4项目的Python语言实现283
9.5项目的Spark平台实现286
第10章基于深度学习的图片分类289
10.1项目分析和设计289
10.1.1需求分析289
10.1.2数据分析291
10.2深度神经网络基础291
10.2.1神经元模型291
10.2.2多层前馈神经网络293
10.2.3梯度下降法295
10.2.4误差反向传播算法297
10.3手写数字识别的设计与实现298
10.3.1模型实现298
10.3.2模型优化301
10.4案例拓展302
10.4.1TensorFlow编程302
10.4.2基于TensorFlow的MLP305
第11章基于小程序的应用开发308
11.1项目分析和设计308
11.1.1需求分析308
11.1.2界面设计309
11.1.3总体设计310
11.2微信小程序开发基础311
11.2.1服务器环境搭建311
11.2.2数据库服务器mysql314
11.2.3微信小程序开发环境简介315
11.3校园新鲜事小程序的实现317
11.3.1手机端小程序的实现317
11.3.2网页版浏览功能的实现323