趣味小游戏的课程设计

目录

一.设计要求- 5 -

二.设计的作用、目的- 5 -

三.课题分析- 5 -

1.贪吃蛇游戏功能分析- 6 -

2.游戏界面分析- 6 -

3.设计思路分析- 6 -

四,具体分工- 7 -

五.设计的具体实现- 8 -

1.系统组成模块结构及功能- 8 -

(1)函数定义- 8 -

(2)主函数main( )- 9 -

(3) 画界面函数DrawK( )- 10 -

(4)游戏具体过程函数GamePlay( )- 10 -

(5)游戏结束函数GameOver( )- 13 -

3.重要函数介绍- 16 -

4.程序代码编写及注释- 19 -

5.软件调试问题分析及解决方法- 25 -

6.软件运行结果- 26 -

六.心得体会及建议- 27 -

七.参考文献- 29 -

一.设计要求

通过游戏程序设计,提高编程兴趣与编程思路,巩固C语言中所学的知识,合理的运用资料,实现理论与实际相结合。

(1).收集资料,分析课题,分解问题,形成总体设计思路;

(2).深入分析各个小问题,列出大纲,编写各部分程序模块;

(3).对于设计中用到的关键函数,要学会通过查资料,弄懂其用法,要联系问题进行具体介绍;

(4).上机调试,查错,逐步分析不能正常运行的原因,确保所设计的程序正确,并且能正常运行;

(5).完成课程设计报告,并进行答辩。

下图是具体的分工流程图。

五.设计的具体实现

1.系统组成模块结构及功能

本贪吃蛇程序包括以下主要的模块:

(1)函数定义

函数定义是对各个基础函数的定义,并且设置需要运用的信息,便于调用

#define N 200

#include /*图形头文件*/

#include /*包含rand等函数*/

#include /*包含bios函数*/

#define LEFT 0x4b00/*光标左键值*/

#define RIGHT 0x4d00/*光标右键值*/

#define DOWN 0x5000/*光标下键值*/

#define UP 0x4800/*光标上键值*/

#define ESC 0x011b/*ESC的ASCII码*/

int i,key;/*图形坐标变量及按键变量*/

int score=0;/*得分*/

int gamespeed=10000;/*游戏速度自己调整*/

struct Food

{

int x;/*食物的横坐标*/

int y;/*食物的纵坐标*/

int yes;/*判断是否要出现食物的变量*/

}food;/*食物的结构体*/

struct Snake

{

int x[];/*蛇的横坐标*/

int y[];/*蛇的纵坐标*/

int node;/*蛇的节数*/

int direction;/*蛇移动方向*/

int life;/* 蛇的生命,0活着,1死亡*/

}snake;

void Init(void);/*图形驱动*/

void Close(void);/*图形结束*/

void DrawK(void);/*画界面函数*/

void GameOver(void);/*结束游戏*/

void GamePlay(void);/*玩游戏具体过程*/

void PrScore(void);/*输出成绩*/

void main(void)/*主函数*/

2.系统程序结构及流程图

3.重要函数介绍

1)主函数main()

初始化图形系统,调用DrawK()画出开始画面,调用函数GamePlay(),即玩游戏过程,游戏结束后调用Close()关闭图形系统,结束程序。

2)画界面函数DrawK();

主界面是一个封闭的围墙,用两个循环语句分别在水平和垂直方向输出连续的宽度和高度均为10个单位的矩形方块,表示围墙,为了醒目,设置为黄色。

3)游戏具体过程函数GamePlay();

这是游戏的主要组成部分,他采用将前一节的坐标赋给后一节,用背景颜色将最后一节去除,当蛇头的坐标与食物的坐标相等时,表示食物被吃掉了。

4)游戏结束函数GameOver()

游戏结束,清除屏幕,输出分数,显示游戏结束信息。

5)PrScore(),输出分数。

6)Close()函数图形结束。

在显示游戏结束信息的画面时,按任意键关闭图形系统,程序结束。

7). Setbkcolor() 设置背景颜色函数

c语言课程设计趣味小游戏,趣味小游戏的课程设计.doc相关推荐

  1. C语言扫地雷游戏的题目简介,C语言程序设计课程设计(论文)-扫地雷游戏.doc...

    C语言程序设计课程设计(论文)-扫地雷游戏 辽 宁 工 业 大 学 C语言程序设计 课程设计(论文) 题目: 扫地雷游戏 院(系): 软件学院 专业班级: 电子商务091班 学 号: 学生姓名: 指导 ...

  2. 《Python游戏趣味编程》 第4章 疯狂的小圆圈

    4 疯狂的小圆圈 图书简介可以看这里: 童晶:<Python游戏趣味编程>新书上架了 本章我们将实现一个好玩的程序,鼠标点击后,会在点击处出现一些同心圆圈,并在窗口中四处反弹,效果如图4- ...

  3. C#趣味消消乐小游戏

    引言 我们小时候可能都玩过这样一款小游戏,它就是开心消消乐.游戏刚开始会生成很多不同的小图标,我们需要交换两个图标的位置使三个(或以上)相同的图标紧挨在一起,这样相同的图标就会消去并随机生成其他图标. ...

  4. python小游戏_课程设计_期末大作业——小游戏合集(含源代码)

    设计小游戏盒子 本文代码链接 点击直接下载 https://download.csdn.net/download/Wps1919/87103302?spm=1001.2014.3001.5501 如将 ...

  5. Java拼图小游戏------《Java程序设计》课程设计

    目录 1.1 研究的背景 1.2 研究的意义 1.3 国内外研究现状 国内研究现状: 国外研究现状: 2.1 Java技术 2.2 GUI技术 2.3 内容设计要求及算法的实现 内容: 要求: 设计算 ...

  6. 关于java基础练习的趣味小游戏(猜数游戏)

    1-100以内的猜数游戏 猜数游戏每次运行有10次机会,每多计算一次就会多消耗10积分(满分为100分!) import java.util.Random; import java.util.Scan ...

  7. python游戏程序-Python游戏趣味编程

    书名:Python游戏趣味编程 定价:69.0 ISBN:9787115538246 作者:童晶 版次:第1版 出版时间:2020-07 内容提要: 本书把趣味游戏开发应用于Python编程教学,通过 ...

  8. 第1章 C/C++与开发环境介绍(《C和C++游戏趣味编程》配套教学视频)

    三年前,我写了一本<c语言课程设计与游戏开发实践教程>,评价还可以. 按这种教学方法教学,一些同学的游戏大作业视频: 前一段时间,我想能否走的更极端一些,尽量脱离小黑窗,从一开始的语法知识 ...

  9. 《Python游戏趣味编程》新书上架了

    <Python游戏趣味编程>案例视频 <Python游戏趣味编程>新书上架了,目前京东.淘宝.当当上搜书名就可以找到,比如: https://item.jd.com/12899 ...

最新文章

  1. dialog监听点击空白关闭_为什么App Store打开一片空白?尝试这样解决
  2. [Warning] TIMESTAMP with implicit DEFAULT value is
  3. PyQt - 维基百科,自由的百科全书
  4. java接口自动化书籍_java接口自动化优化(一)
  5. 阶段1 语言基础+高级_1-3-Java语言高级_06-File类与IO流_06 Properties集合_1_使用Properties集合存储数据,遍历取出集合中的数据...
  6. adb脚本选择语句_Python开发:王者荣耀自动刷金币脚本
  7. [寻找环链表入口点] 快慢指针数学原理剖析
  8. python登录判断用户名和密码_第一个python程序-判断登陆用户名和密码是否正确...
  9. odoo 慎用related(计算字段)
  10. 播布客老顽童MySQL DBA培训目录
  11. python12306自动抢票为什么进入个人中心_python 12306自动抢票
  12. 解决gateway转发websocket出现Max frame length of 65536 has been exceeded
  13. 强不知以为知 怎能善其事
  14. 当社群本身具备活跃性,我们应该做什么
  15. 简单几步实现内网穿透
  16. java如何获取storage_本地化存储Storage
  17. 标准日本语初级上-------(1~12课)
  18. ps无法在此计算机上运行,解决PS打开图片"无法完成请求,因为文件格式模块不能解析该文件"...
  19. linux 实验感悟_linux实训心得_linux实习心得体会范文
  20. 无法安装.Net4.0 《已在此计算机上安装相同或更高版本的 .NET Framework 4》解决方案

热门文章

  1. vmvare搭建k8s集群
  2. 2021鸿蒙手机上线时间,华为新款手机2021款(华为P50发布上市时间)
  3. 新旧动能转换要紧抓资本市场建设动力 ——陈宗建谈山东自贸区背景下的经济结构转型升级
  4. vlan实验(三种模式)
  5. Flume之flume-ng
  6. matlab simulink欠驱动水面船舶航迹自抗扰控制研究
  7. Android 文字扫描框架
  8. 基于SpringBoot+Vue的校园招聘管理系统(Java毕业设计)
  9. 操作系统第一章操作系统引论习题及答案
  10. WordPress可以搭建哪些类型的网站