注册 登录 进入教材巡展
#
  • #

出版时间:2024-08

出版社:西安电子科技大学出版社

以下为《程序设计综合实践(第二版)》的配套数字资源,这些资源在您购买图书后将免费附送给您:
  • 西安电子科技大学出版社
  • 9787560674476
  • 2-1
  • 549918
  • 16开
  • 2024-08
  • 自动化技术、计算机技术
  • 本科
目录
基础算法篇


第1章 线性结构 2
1.1 线性表的概念 2
1.2 算法和算法分析 6
1.2.1 算法的性能分析与度量 7
1.2.2 算法的时间复杂度和空间复杂度 8
1.3 线性表的顺序存储 9
1.4 线性表的链式存储 16
1.4.1 单链表的概念 16
1.4.2 单链表基本操作的实现 18
1.4.3 单链表应用举例 24
1.4.4 双向链表应用举例 27
1.4.5 其他链表 33
1.5 栈和队列 33
1.5.1 栈和队列的概念 33
1.5.2 栈和队列的实现思路 35
1.6 本章总结 38
1.7 本章实践 38
第2章 递归程序设计 41
2.1 栈与递归 41
2.1.1 汉诺塔问题递归程序设计 41
2.1.2 递归程序执行过程分析 43
2.1.3 等效非递归算法设计 45
2.2 分治法 46
2.2.1 无符号大数的Karatsuba乘法 46
2.2.2 Karatsuba乘法的程序实现 48
2.3 回溯法 52
2.3.1 八皇后问题 54
2.3.2 0-1背包问题 58
2.4 本章总结 62
2.5 本章实践 63
第3章 查找和排序 65
3.1 顺序查找和二分查找算法 65
3.2 简单排序算法 66
3.2.1 冒泡排序 66
3.2.2 简单选择排序 67
3.2.3 直接插入排序 68
3.3 归并排序算法 69
3.4 快速排序算法 71
3.5 其他特殊排序算法 75
3.5.1 计数排序 75
3.5.2 桶排序 76
3.5.3 基数排序 77
3.5.4 其他排序 78
3.6 本章总结 78
3.7 本章实践 78
3.8 课外研学实践 78

人工智能篇

第4章 简单房价预测项目 80
4.1 问题描述 80
4.2 解题思路 80
4.2.1 问题分析 80
4.2.2 数据分析 80
4.2.3 线性回归方法 81
4.2.4 最小二乘法 82
4.3 项目实现 84
4.3.1 创建项目 84
4.3.2 全局变量 86
4.3.3 程序整体框架 87
4.3.4 数据读入 88
4.3.5 初始化 89
4.3.6 线性回归 89
4.3.7 预测房价 90
4.4 运行结果 90
4.5 本章总结 91
4.6 项目拓展 91
第5章 鸢尾花分类项目 92
5.1 问题描述 92
5.2 解题思路 93
5.2.1 问题分析 93
5.2.2 K-Means算法 93
5.2.3 算法流程 95
5.3 项目实现 95
5.3.1 创建项目 95
5.3.2 全局变量 98
5.3.3 程序整体框架 99
5.3.4 数据读入 99
5.3.5 初始化簇群 101
5.3.6 KMeans()函数 102
5.3.7 计算点到质心的距离 102
5.3.8 确定簇群 103
5.3.9 计算新质心 104
5.3.10 判断是否需要继续迭代 105
5.4 运行结果 106
5.5 本章总结 107
5.6 项目拓展 108
第6章 波士顿房价预测项目 109
6.1 问题描述 109
6.2 解题思路 109
6.2.1 问题分析 109
6.2.2 三层BP神经网络模型 110
6.2.3 M-P神经元模型 110
6.2.4 前向传播 112
6.2.5 反向传播算法的数学推导 112
6.2.6 算法流程 114
6.3 项目实现 115
6.3.1 创建项目 115
6.3.2 全局变量 117
6.3.3 代码整体流程的构建 118
6.3.4 训练数据读入 119
6.3.5 神经网络的初始化 120
6.3.6 神经网络的训练 121
6.3.7 前向传播函数的实现 122
6.3.8 反向传播的权值修正 123
6.3.9 评估神经网络模型 124
6.4 运行结果 125
6.5 本章总结 126
6.6 项目拓展 126
6.7 课外研学实践 126

游戏开发篇

第7章 基于控制台的贪吃蛇游戏 128
7.1 系统功能结构 128
7.2 系统业务流程 128
7.3 系统功能实现 129
7.3.1 创建项目 129
7.3.2 头文件代码实现 130
7.3.3 主程序文件代码实现 131
7.3.4 游戏主菜单界面实现 132
7.3.5 帮助和关于菜单选项实现 133
7.3.6 初始化地图 134
7.3.7 生成食物 135
7.3.8 蛇移动 136
7.3.9 死亡判定 138
7.3.10 移动速度的调整 139
7.4 游戏运行效果 139
7.5 本章总结 140
7.6 项目拓展 140
第8章 基于MFC的俄罗斯方块游戏 141
8.1 系统功能结构 141
8.2 系统业务流程 141
8.3 系统功能实现 142
8.3.1 创建项目 142
8.3.2 方块基本操作 145
8.3.3 游戏逻辑控制 148
8.3.4 游戏开始与定时器控制 158
8.3.5 游戏界面绘制 159
8.3.6 游戏帮助 162
8.3.7 游戏暂停和继续 163
8.4 游戏界面优化 164
8.4.1 对话框优化 164
8.4.2 标题栏优化 167
8.4.3 按钮优化 172
8.5 游戏运行效果 173
8.6 本章总结 174
8.7 项目拓展 174

管理信息系统篇


第9章 学生成绩管理系统 176
9.1 问题描述 176
9.2 解题思路 176
9.2.1 系统功能分析 176
9.2.2 业务流程分析 177
9.3 系统功能实现 178
9.3.1 创建项目 178
9.3.2 预设项目基本信息 181
9.3.3 文件包含 183
9.3.4 宏定义 183
9.3.5 结构体类型定义 184
9.3.6 system()函数 187
9.3.7 函数声明 189
9.3.8 主函数框架 190
9.3.9 主菜单界面 191
9.3.10 设置文字的输出位置 195
9.3.11 输入学生信息 197
9.3.12 计算学生成绩 199
9.3.13 计算课程成绩 201
9.3.14 学生记录存盘 202
9.3.15 读取学生记录 204
9.3.16 增加学生记录 206
9.3.17 按学号查找学生记录 207
9.3.18 按姓名查找学生记录 209
9.3.19 删除学生记录 211
9.3.20 修改学生记录 214
9.3.21 输出学生记录 217
9.3.22 按姓名对学生记录排序 218
9.3.23 按学号对学生记录排序 220
9.3.24 按总分对学生记录升序排序 222
9.3.25 按总分对学生记录降序排序 223
9.3.26 学生成绩统计 226
9.3.27 退出系统 229
9.3.28 容错处理 229
9.4 本章总结 229
9.5 项目拓展 230

国产软件篇

第10章 基于华为鲲鹏平台的程序设计 232
10.1 鲲鹏计算产业及生态体系概述 232
10.1.1 计算产业发展趋势 232
10.1.2 鲲鹏计算产业生态体系 234
10.2 鲲鹏处理器芯片 235
10.2.1 发展历程与典型应用场景 235
10.2.2 ARM处理器体系 237
10.2.3 鲲鹏920芯片 239
10.2.4 开发工具链 240
10.3 鲲鹏开发套件DevKit工具介绍 241
10.3.1 鲲鹏DevKit工具产生背景 241
10.3.2 DevKit整体介绍 246
10.4 华为C语言编程规范 248
10.4.1 命名规范 248
10.4.2 注释规范 248
10.4.3 编程规范 248
10.4.4 函数规范 248
10.4.5 内存分配规范 248
10.4.6 异常处理规范 249
10.4.7 安全性和可靠性 249
10.5 基于鲲鹏云平台的项目实践 249
10.5.1 实验环境说明 249
10.5.2 C语言开发环境搭建 250
10.5.3 C语言平方根求和程序 258
10.5.4 C语言函数指针使用程序 260
10.5.5 C语言动态库使用程序 261
10.5.6 实验环境清理 263
10.6 本章总结 264
10.7 项目拓展 264
10.8 课外研学实践 264

参考文献 266