• C语言程序设计——以机器博弈为例(微课版)
图书条目标准图
21年品牌 40万+商家 超1.5亿件商品

C语言程序设计——以机器博弈为例(微课版)

37.9 5.8折 65 全新

库存22件

河北保定
认证卖家担保交易快速发货售后保障

作者邱虹坤;王亚杰;孙玉霞;刘成;王晓岩;郭建新;杨煦

出版社清华大学出版社

出版时间2023-09

版次1

装帧其他

货号9787302641711

上书时间2024-12-17

尚贤文化郑州分店

三年老店
已实名 已认证 进店 收藏店铺

   商品详情   

品相描述:全新
图书标准信息
  • 作者 邱虹坤;王亚杰;孙玉霞;刘成;王晓岩;郭建新;杨煦
  • 出版社 清华大学出版社
  • 出版时间 2023-09
  • 版次 1
  • ISBN 9787302641711
  • 定价 65.00元
  • 装帧 其他
  • 开本 16开
  • 纸张 胶版纸
  • 页数 312页
  • 字数 486千字
【内容简介】
本书以机器博弈为例,系统地介绍了C语言程序设计。本书共13章,主要包括C语言概述、算法基础、数据类型与表达式,选择结构、循环结构、数组、函数、预处理与位运算、指针、结构体和链表、文件、面向对象编程基础等内容,并在每章后附加人工智能(机器博弈)相关知识的扩展阅读。 本书可作为高等院校程序设计课程的教材或教辅资料,也可作为机器博弈竞赛的入门教材及机器博弈爱好者的参考书。
【作者简介】
:
邱虹坤,副教授,硕士研究生导师,从事计算机科学及人工智能领域的教学与科研工作。曾担任中国人工智能学会机器博弈专业委员会理事、秘书长,中国计算机博弈锦标赛、辽宁省和安徽省大学生计算机博弈大赛裁判长和答辩专家。主持或参与国家、省部级科研课题10余项,多次获得省级、校级教学成果奖。主编或参编著作及教材9部,在核心期刊与国际会议上发表学术论文30余篇。
【目录】
第1章C语言概述/1

1.1计算机语言/1

1.1.1低级语言和高级语言/1

1.1.2面向过程和面向对象/2

1.2C语言概述/3

1.2.1C语言的发展/3

1.2.2C语言的特点/3

1.3C语言程序示例/4

1.4C语言程序的开发过程/8

1.5小结/13

1.6习题/13

1.7扩展阅读——初识人工智能/14

第2章算法基础/16

2.1算法的概念/16

2.2算法的描述方法/17

2.3机器博弈的概念/19

2.4博弈算法/21

2.4.1搜索算法的分类与特点/21

2.4.2典型博弈算法介绍/21

2.5机器博弈项目规则/23

2.5.1井字棋规则/23

2.5.2亚马逊棋规则/23

2.5.3五子棋规则/24

2.5.4爱恩斯坦棋规则/24

2.6小结/252.7习题/25

2.8扩展阅读——机器博弈的发展历程/25

第3章数据类型与表达式/28

3.1棋局要素/29

3.2常量与变量/30

3.2.1常量/30

3.2.2变量/33

3.2.3变量的定义与声明/34

3.2.4变量初始化/35

3.3数据类型转换/36

3.3.1隐式类型转换/36

3.3.2显式类型转换/37

3.4运算符和表达式/38

3.4.1算术运算符及其表达式/38

3.4.2赋值运算符及其表达式/39

3.4.3机器博弈中的局面评估函数/40

3.5输入与输出/40

3.5.1字符输入/输出函数/40

3.5.2棋局信息输出/41

3.5.3棋局信息输入/43

3.6小结/45

3.7习题/45

3.8扩展阅读——机器博弈竞赛/46

第4章选择结构/48

4.1引例/48

4.2关系运算与逻辑运算/49

4.2.1关系运算符及其表达式/49

4.2.2逻辑运算符及其表达式/50

4.2.3井字棋落子坐标合法性判断/51

4.3if语句/52

4.3.1简单逻辑判断/52

4.3.2复杂逻辑判断/56

4.3.3井字棋步数和落子颜色判断/57

4.4switch语句/58

4.4.1switch语句的基本应用/59

4.4.2爱恩斯坦棋着法选择/60

4.5小结/60

4.6习题/60

4.7扩展阅读——机器博弈系统组成/61

第5章循环结构/63

5.1引例/63

5.23种循环语句/64

5.2.1while语句/64

5.2.2do…while语句/64

5.2.3for语句/66

5.3计数循环/67

5.3.1计数循环的基本应用/67

5.3.2蒙特卡洛方法求π的近似值/69

5.3.3井字棋随机落子/70

5.4条件循环/71

5.4.1条件循环的基本应用/71

5.4.2井字棋落子坐标控制/73

5.5循环嵌套/73

5.5.1循环嵌套的基本应用/73

5.5.2绘制五子棋棋盘/75

5.6控制转移语句/75

5.7综合程序举例——五子棋棋盘坐标及落子/77

5.8小结/80

5.9习题/80

5.10扩展阅读——博弈树/82

第6章数组/84

6.1一维数组/84

6.1.1引例/84

6.1.2一维数组的基本操作/85

6.1.3一维数组实现井字棋棋盘数字化/93

6.2二维数组/94

6.2.1二维数组的基本操作/94

6.2.2二维数组实现井字棋人人对弈/98

6.3字符数组/101

6.3.1字符数组的定义和引用/1016.3.2字符数组的输入/输出/103

6.3.3常用字符串处理函数/105

6.4综合程序举例——五子棋人人对弈程序/110

6.5小结/116

6.6习题/116

6.7扩展阅读——机器博弈中的蒙特卡洛方法/117

第7章函数/119

7.1概述/119

7.1.1基本概念与引例/119

7.1.2井字棋博弈程序的函数/122

7.2函数的定义/123

7.2.1函数定义的基本格式/124

7.2.2函数的参数/124

7.2.3return语句/128

7.2.4函数原型的声明/129

7.2.5实现博弈程序的一般过程和方法/130

7.3函数的调用/132

7.3.1函数调用的形式/132

7.3.2函数调用的过程/133

7.4递归函数的设计与调用/134

7.4.1简单递归函数的设计与调用/134

7.4.2井字棋博弈程序中的递归函数/136

7.5变量的作用域和生存期/137

7.5.1变量的作用域/138

7.5.2变量的生存期/139

7.5.3井字棋博弈程序中的全局变量/140

7.6综合程序举例/142

7.7小结/149

7.8习题/149

7.9扩展阅读——Minimax算法原理及其实现/150

第8章预处理与位运算/152

8.1预处理命令/152

8.1.1机器博弈中常量值的处理/152

8.1.2文件包含——机器博弈中多文件操作/156

8.1.3条件编译——防止机器博弈中重复包含/159

8.2位运算/161

8.3机器博弈中的Zobrist哈希技术/166

8.4小结/168

8.5习题/168

8.6扩展阅读——AlphaBeta剪枝/169

第9章指针/171

9.1指针的基本概念/171

9.1.1指针在博弈程序中的作用/171

9.1.2变量的地址/172

9.1.3指针变量的概念/174

9.2指针变量的定义与引用/174

9.2.1指针变量的定义与赋值/174

9.2.2指针变量的引用/176

9.2.3指针变量作为函数参数/177

9.3指针与数组/178

9.3.1通过指针访问数组元素/178

9.3.2指针变量所支持的运算/179

9.3.3数组名作函数参数/180

9.3.4指向数组的指针/182

9.4指针与字符串/184

9.5指向函数的指针/186

9.6指针型函数/187

9.7指针数组和多级指针/188

9.7.1指针数组的概念/188

9.7.2多级指针/190

9.7.3main函数的参数/190

9.8指针在博弈程序中的应用/191

9.8.1用命令行参数设置博弈程序的先后手/192

9.8.2构建大小可变的棋盘/193

9.9综合程序举例/194

9.10小结/198

9.11习题/199

9.12扩展阅读——遗传算法/201

第10章结构体和链表/203

10.1结构体的基本操作——记录竞赛相关信息/203

10.1.1记录五子棋棋谱数据/203

10.1.2结构体的声明和定义/204

10.1.3结构体的初始化和引用/207

10.1.4类型定义符typedef/211

10.2结构体指针——记录竞赛得分信息/211

10.2.1指向结构体变量的指针/211

10.2.2指向结构体数组的指针/213

10.3单向链表——记录赛队成绩/213

10.3.1概念/214

10.3.2动态存储分配/216

10.3.3链表的基本操作/218

10.4综合程序举例——比赛积分数据维护/225

10.5小结/227

10.6习题/227

10.7扩展阅读——人工神经网络/228

第11章文件/230

11.1文件的概述/230

11.2文件的打开和关闭/232

11.2.1文件指针/232

11.2.2打开或关闭文件——棋谱文件的打开或关闭/233

11.3文件的读写函数/236

11.3.1字符读写函数——存取五子棋棋盘/236

11.3.2字符串读写函数——读取名言警句/240

11.3.3格式化读写函数——保存落子信息/241

11.3.4块读写函数——保存赛队信息/244

11.4文件的定位函数/245

11.5综合程序举例——五子棋棋谱的读写/246

11.6小结/250

11.7习题/250

11.8扩展阅读——机器学习/251

第12章浅谈面向对象/253

12.1面向对象概念/253

12.2面向对象设计/254

12.2.1类的基本概念/254

12.2.2类的实例化/256

12.3Windows窗体设计/258

12.4综合程序举例/265

12.5小结/268

12.6习题/269

12.7扩展阅读——深度学习/269

第13章项目实战/271

13.1猜数游戏挑战赛/271

13.1.1功能与要求/271

13.1.2程序的构成/271

13.1.3程序运行截图/272

13.2简易五子棋/273

13.2.1关键数据结构设计/273

13.2.2系统设计/274

13.2.3函数功能及说明/280

13.2.4数据结构和搜索算法的优化/281

13.3综合程序举例——五子棋的棋盘设计(C#)/283

13.4小结/291

13.5扩展阅读——AlphaGo/292

附录AC语言运算符优先级和结合性表/295

参考文献/297
点击展开 点击收起

—  没有更多了  —

以下为对购买帮助不大的评价

此功能需要访问孔网APP才能使用
暂时不用
打开孔网APP