经过半年多的写作、修改、校样、印制,我们的实践教材《C语言课程设计与游戏开发实践教程》终于出版了。这本书可以看成是“做游戏,学编程(C语言)专栏”的详细版本,以下为书中部分案例的运行效果,本书所有案例均提供源代码下载。

京东地址:https://item.jd.com/12133017.html

图书前言:

C语言是一门重要的基础课程,应用广泛,也是不少后续课程的基础。然而,由于C语言语法规则较多,在实际编程时又相对灵活,很多初学者接触这门课程会觉得有难度,普遍有畏惧心理。目前配套教材一般偏向于语法规则的介绍,实例偏数学算法,过于抽象、趣味性不强,学生不愿写程序,进而觉得入门困难。

针对这些问题,本书把游戏开发实践应用于C语言课程设计教学,培养学生对编程的兴趣。为了达到这一目的,本书应用C语言的语法知识带领同学从无到有地开发游戏,通过游戏案例逐步将已学的语法知识用起来,在实际编程中加深体会。在设计的过程中尽量站在初学者的角度,降低编写游戏的难度,不超出所学知识范围,逐步提高读者对编程的兴趣和能力。

美国著名教育家杜威曾经说过:“大多数的人,只知道对五官接触的、能够实用的东西才有趣味,书本上的趣味是没有的”。同样对于C语言这门课程,让学生看到用C语言可以编出很好玩的程序,学生感到有趣、有成就感,就会自己花时间钻研,师生积极互动,教学效果也因此得到改进。

各章节主要内容如下:

第1章,学习printf、scanf、if-else、while、for语句后,进行弹跳小球、飞机游戏的开发,并介绍程序调试的方法与技巧。

第2章,学习函数后,利用函数封装及标准的游戏框架,进行飞机游戏、反弹球消方块、flappy bird的开发。

第3章,学习数组后,利用数组改进数据结构,实现生命游戏、反弹球消砖块、空战游戏、贪吃蛇的开发,并介绍SVN代码管理工具。

第4章,学习简单绘图工具,并进行多球反弹、实时钟表、反弹球消方块、鼠标交互的学习开发。

第5章,学习图片音乐素材的导入和使用,并进行flappy bird、飞机大战、行走小人、双人反弹球的开发学习。

第6章,利用后续语法知识进一步改进游戏程序,如指针创建动态数组、字符串控制得分显示、结构体改进数据结构、文件用于游戏存档等。实现了黑客帝国字符雨动画、互动粒子仿真、具有多界面和存档功能的飞机大战游戏。

第7章,利用游戏化学习的思路,学习C语言的两个知识难点:递归与链表。

第8章,介绍多个游戏开发实践案例:挖地小子、台球、太鼓达人、扫雷、蓝色药水、Rings、猪小弟、俄罗斯方块、通天魔塔、1010、炸弹人、口袋妖怪、大鱼吃小鱼。每个案例讲解了主体功能、实现思路。

图书的详细目录:

本书的使用方法:

本书通过一个一个的游戏案例进行讲解,并按照C语言的学习进度,逐步使用更多的语法知识,难度逐渐加深。在每章内容开始前,会介绍学习该章所需的语法知识,大家在掌握对应语法后可以进入相应游戏案例的开发。每个案例会分成很多步骤,从零开始step by step地来实现,书中列出了每个步骤的实现目标、实现思路、相应的参考代码。读者可以先在前一个步骤代码的基础上,尝试实现下一个步骤,碰到困难再参考书中给出的例子代码。在每个案例讲解后列出了一些思考题,读者可以尝试进一步改进。

本书不讲解C语言的基础语法知识,读者可以通过相应入门教材、在线慕课进行学习,并配合Online Judge进行练习。

书中游戏案例开发使用操作系统为Windows,缺省开发环境为Visual C++ 6,也可以使用高版本的Microsoft Visual Studio进行开发。

-----------------------

图书的其他信息可以参考清华大学出版社上的介绍:清华大学出版社-图书详情-《C语言课程设计与游戏开发实践教程》

样章“第3章 应用数组的游戏开发”可在线阅读与下载: http://www.tup.tsinghua.edu.cn/upload/books/yz/074930-01.pdf

图书附带的源代码可从百度网盘下载:http://pan.baidu.com/s/1skGKbj3

希望这本图书能对C语言初学者有所帮助,也欢迎大家多提宝贵意见,谢谢!

做游戏,学编程(C语言)教材《C语言课程设计与游戏开发实践教程》出版了...相关推荐

  1. c语言幸运数字程序设计,(C语言版幸运数字课程设计.doc

    (C语言版幸运数字课程设计 中国计量学院 程序设计实践(报告) 题目: 二级学院 _ __ 专 业 班 级 _ _ 姓 名 学 号 __ _ 指导教师 _____ 年 月 日 #include #in ...

  2. vs2010c语言复数i怎么表示,学编程应该知道的c语言中的复数操作

    学编程应该知道的c语言中的复数操作 复数在数学运算中十分重要,在编写数值运算或者算法的时候,我们会用到复数这种概念. 那么,复数在C/C++语言中是如何表示的呢?我们接下来一一介绍. C语言中复数 在 ...

  3. c语言课程设计--拼图游戏,C语言课程设计_拼图游戏.pdf

    C -- 语言课程设计 拼图游戏 一.实验内容 玩家通过鼠标单击相邻位有空位的方块来移动方块,从而最终将一副散乱的图片拼成完 整的图片.要求如下: 1. 游戏的初始界面如图一,单击空格键进入游戏,进入 ...

  4. c语言课程设计报告之迷宫,C语言课程设计-迷宫游戏

    <C语言课程设计-迷宫游戏>由会员分享,可在线阅读,更多相关<C语言课程设计-迷宫游戏(15页珍藏版)>请在人人文库网上搜索. 1.计算机技术基础课程设计C语言设计报告题目:完 ...

  5. 河北工业大学c语言寻宝游戏,计算机技术基础(c语言)课程设计寻宝游戏.doc

    计算机技术基础(c语言)课程设计寻宝游戏 计算机技术基础(c语言)课程设计 寻宝游戏 #include #include #include #include #include #define ESC ...

  6. Java课程设计——挖地雷游戏设计报告

    源文件: 大学生Java课程设计--挖地雷游戏设计报告源文件-其它文档类资源-CSDN文库 目 录 摘 要. 1 一.引言. 2 1.设计任务和基本要求. 2 二.报告正文. 3 1.需求分析. 3 ...

  7. 扫雷java讲解_java课程设计(扫雷游戏)讲解.doc

    java课程设计(扫雷游戏)讲解.doc 成 绩 评 定 表 学生姓名班级学号 专 业课程设计题目基于Java的扫雷游戏软件设计评 语 组长签字: 成绩 日期 2014 年 月 日 课程设计任务书 学 ...

  8. JAVA程序连连看的项目总结,JAVA课程设计连连看游戏的开发

    JAVA课程设计连连看游戏的开发 计算机科学与工程学院集中性实践教学计划书( 2013 - 2014 学年第 1 学期)课程名称: 专业实习 姓 名: 学 号: 2010081303 专 业: 计算机 ...

  9. 计算机课程设计收费管理系统,C语言机房收费管理系统课程设计

    <C语言机房收费管理系统课程设计>由会员分享,可在线阅读,更多相关<C语言机房收费管理系统课程设计(15页珍藏版)>请在人人文库网上搜索. 1.课程设计报告课程设计题目:机房收 ...

最新文章

  1. sort降序shell_希爾排序(Shell Sort)
  2. android gridview不显示 自定义,Android gridview和自定义标题
  3. 凭借这份Java面试题集,java上传文件夹
  4. oracle性能问题排查,性能测试Oracle消耗排查记录
  5. 主键可以增加查询速度吗_米脂起重信号工含金量高吗 可不可以联网查询在哪里查c...
  6. 区别于传统低效标注,两种基于自然语言解释的数据增强方法
  7. SetTimer和KillTimer详解
  8. 人工智能风险分析技术研究进展
  9. Intellij IDEA的java环境与安卓sdk配置实例教程
  10. HTTP 请求之URLs 与 URNs
  11. MyBatis使用log4j输出日志
  12. 怎么在线批量网站打开?
  13. cad画多段线时不显示轨迹_cad画多段线时不显示轨迹_CAD画多段线的时候看不到预览效果的解决方法...
  14. 基于ConfuserEx的混淆加壳
  15. 贝叶斯网络和马尔科夫的冷知识
  16. 10台堆垛机同时启动的那一刹那!
  17. 2018工业互联网峰会在京召开
  18. java读pdf一行_java读与pdf白件的时分呈现非常
  19. 视频格式转换器如何截取视频片段
  20. hdu2550百步穿杨 解报告

热门文章

  1. Docker学习笔记3
  2. php算出长方形面积,【后端开发】PHP中长方形的面积怎么求
  3. 深拷贝和浅拷贝开发常用方法总结
  4. 【深度学习】知乎高赞:深度学习如何调参?
  5. 论文笔记:GAN Dissection: Visualizing and Understanding Generative Adversarial Networks
  6. 数字表,类似家里的数字电表
  7. Oracle数据库管理员认证三大认证的区别和意义
  8. Java 通过三方库实现指纹识别对比
  9. 数学建模-层次分析模型
  10. jQuery对象合并