新書推薦:
《
山家清供:小楷插图珍藏本 谦德国学文库系列
》
售價:HK$
143.4
《
政略与战略论
》
售價:HK$
140.0
《
百年词史-(1900-2000(全二册))
》
售價:HK$
333.8
《
RDI人际关系发展疗法:修复孤独症核心障碍,让干预回归生活
》
售價:HK$
99.7
《
金融科技监管的目标、原则和实践:全球视野下加密货币的监管
》
售價:HK$
110.9
《
城市轨道交通绿色低碳规划设计研究——深圳地铁6号线工程创新与实践
》
售價:HK$
221.8
《
艾尔米塔什国家博物馆 少年游学 人一生一定要看的博物馆
》
售價:HK$
38.1
《
世界四大博物馆4册套装 卢浮宫大英大都会艾尔米塔什博物馆 青少年游学艺术参观科普书
》
售價:HK$
152.3
編輯推薦:
1.为初学者量身打造
循序渐进,适合零基础入门者学习。书中案例从易到难,且提供了实现过程的分步骤代码;
2.趣味性强
本书精选了13个案例,涵盖多种游戏类型,在开发趣味程序的过程中,会有很强的成就感;
3.可拓展性强
所有章节均提供练习题,培养读者逻辑思维的能力;
4.配套资源丰富
提供演示视频、配套资源代码和素材、书中每章练习题答案、书中配套彩图文件;
5.全彩印刷
本书把趣味游戏开发应用于C和C 编程教学,通过13个由易到难的有趣案例,带领读者从零基础开始学习。本书将编程教学穿插在游戏开发的过程中,通过游戏案例逐步讲解新的语法知识,便于读者理解其含义。书中案例均经过精心的设计,并包括详细的实现过程,适合上手,让读者学习编程的同时培养逻辑思维能力,增强认识问题、解决问题的能力。
本书带领读者搭建的案例包括:
仿真自由落体的小球
别碰方块游戏
旋转蛇错觉
见缝插针游戏1.为初学者量身打造
循序渐进,适合零基础入门者学习。书中案例从易到难,且提供了实现过程的分步骤代码;
2.趣味性强
本书精选了13个案例,涵盖多种游戏类型,在开发趣味程序的过程中,会有
內容簡介:
本书通过趣味案例逐步引入语法知识,教读者用C?和?C 编写游戏程序,激发读者学习编程的兴趣。全书共14章和3个附录,依次介绍了C和C 编程语言的基本概念、数据类型、if语句、while循环、for循环、一维数组、函数、二维数组、字符串、文件读写、指针、递归、面向对象编程、链表和C 标准模板库等知识,其中贯穿了众多的小案例和游戏,*后综合应用这些知识编写了一款冒险游戏。附录分别给出了练习题的参考答案、语法知识索引以及常用的调试方法和辅助开发工具。本书适合不同年龄、不同层次的 C 与 C 编程初学者阅读和自学,也可以作为中学生、大学生学习程序设计的教材和少儿编程培训机构的参考教材。
關於作者:
童晶,浙江大学计算机专业博士,河海大学计算机系副教授、硕士生导师,中科院兼职副研究员,主要研究方向为计算机图形学、数字化艺术、虚拟现实、三维打印等,曾发表学术论文 30 余篇。具有 15 年的一线编程教学经验,被评为河海大学优秀主讲教师。开设课程在校内广受好评,在知乎、网易云课堂、中国大学 MOOC 等线上平台已有上百万次的阅读量。积极投身教学与学生创新,曾指导学生获得英特尔嵌入式比赛全国一等奖、挑战杯全国三等奖、中国软件杯全国一等奖、中国大学生服务外包大赛全国一等奖等众多奖项。
目錄 :
第 1 章 C 和 C 与开发环境介绍 1
1.1 什么是 C 和 C 1
1.2 集成开发环境 2
1.3 小结 6
第 2 章 仿真自由落体的小球 7
2.1 下载安装图形库 8
2.2 显示一个静止小球 11
2.3 显示多个小球 13
2.4 利用变量修改多个小球的位置 16
2.5 小球下落动画 20
2.6 利用 while 实现小球下落动画 21
2.7 利用 if 语句实现小球重复下落 24
2.8 小球落地反弹 26
2.9 小球加速下落 27
2.10 小结 30
第 3 章 别碰方块游戏 31
3.1 字符 32
3.2 按空格键控制小球起跳 34
3.3 方块的绘制与移动 35
3.4 小球和方块的碰撞判断 38
3.5 随机方块的速度和高度 39
3.6 得分的计算与显示 42
3.7 避免空中起跳 46
3.8 小结 46
第 4 章 旋转蛇错觉 47
4.1 绘制扇形 48
4.2 RGB 颜色模型 49
4.3 绘制一个扇形单元 51
4.4 for 循环语句 52
4.5 循环的嵌套 56
4.6 HSV 颜色模型 60
4.7 按键切换效果 63
4.8 小结 66
第 5 章 见缝插针游戏 67
5.1 绘制圆盘与针 68
5.2 针的旋转 69
5.3 利用数组实现多根针的绘制 72
5.4 批量绘制函数 76
5.5 针的发射与新增 76
5.6 游戏失败判断 79
5.7 得分与显示效果改进 81
5.8 小结 84
第 6 章 见缝插圆游戏 85
6.1 利用数组记录多个随机圆 86
6.2 每次增加一个随机圆 88
6.3 新圆不和已有圆相交 90
6.4 函数的定义与应用 93
6.5 新圆半径最大化 99
6.6 函数封装多种绘制效果 101
6.7 按键互动 103
6.8 小结 106
第 7 章 贪吃蛇游戏 107
7.1 变量作用域与游戏框架 108
7.2 基于二维数组的游戏地图 110
7.3 小蛇向右移动 115
7.4 控制小蛇向 4 个方向移动 117
7.5 时间控制的改进 120
7.6 失败判断与显示 122
7.7 添加食物 124
7.8 小结 129
第 8 章 十步万度游戏 130
8.1 结构体 131
8.2 鼠标交互 135
8.3 被鼠标点击后旋转 137
8.4 函数的参数传递 139
8.5 旋转的传播 141
8.6 操作步数与旋转度数 142
8.7 小结 147
第 9 章 推箱子游戏 148
9.1 字符串与字符数组 149
9.2 应用字符数组存储关卡数据 152
9.3 键盘控制游戏角色移动 156
9.4 元素更新的实现 157
9.5 游戏胜利判断 160
9.6 多关卡的实现 162
9.7 基于文件的关卡数据读取 170
9.8 枚举类型 172
9.9 小结 173
第 10 章 十字消除游戏 174
10.1 红色方块的表示与绘制 175
10.2 随机颜色方块的实现 177
10.3 鼠标点击与十字消除 179
10.4 方块提示框的绘制 182
10.5 倒计时与进度条 183
10.6 得分计算与胜负判断 187
10.7 多关卡与增加游戏难度 188
10.8 地址与指针 196
10.9 指针与数组 199
10.10 小结 203
第 11 章 樱花树 204
11.1 递归 205
11.2 分形与递归 210
11.3 绘制樱花树 215
11.4 显示绘制过程动画 218
11.5 小结 222
第 12 章 坚持一百秒游戏 223
12.1 背景与火箭图片的显示 224
12.2 基于结构体的反弹子弹 229
12.3 面向对象版本的子弹 231
12.4 每隔 2 秒增加一颗子弹 234
12.5 添加火箭类 236
12.6 碰撞判断与火箭爆炸 237
12.7 坚持时间与多条生命的显示 239
12.8 添加音乐音效 245
12.9 添加智能飞碟类 246
12.10 小结 248
第 13 章 祖玛游戏 249
13.1 链表 250
13.2 C 标准模板库 253
13.3 顶点类与轨迹类 256
13.4 添加小球类 260
13.5 将小球放置在轨迹线上 262
13.6 小球自动沿着轨迹运动 264
13.7 小球的插入与消除 270
13.8 添加炮台类 272
13.9 炮台旋转与更改小球颜色 274
13.10 炮台发射小球 275
13.11 连续出球与胜负判断 277
13.12 添加音效和复杂轨道 278
13.13 小结 280
第 14 章 火柴人的无尽冒险游戏 281
14.1 定义 Player 类 282
14.2 异步输入与延时改进 285
14.3 枚举类型状态切换 286
14.4 添加奔跑动画 288
14.5 跳跃的实现 290
14.6 添加地面类与场景类 292
14.7 火柴人与地面的碰撞检测 294
14.8 相对运动效果的实现 296
14.9 无尽关卡与胜负判断 298
14.10 添加敌人类 300
14.11 添加音效和更多图片 303
14.12 小结 305
附录 A 练习题参考答案 307
附录 B 语法知识索引 337
附录 C 调试方法与辅助工具 342