失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > c语言程序设计九宫格 C语言课程设计之智力九宫格.doc

c语言程序设计九宫格 C语言课程设计之智力九宫格.doc

时间:2020-07-18 22:53:30

相关推荐

c语言程序设计九宫格 C语言课程设计之智力九宫格.doc

C语言课程设计之智力九宫格

C语言课程设计报告

学生姓名: 徐永杰

学号: 101304229

系(院): 信息工程学院

专业: 计算机科学与技术

班级: 计科1002

设计题目: 智力九宫格

指导老师: 徐永安

二零一一年七月

设计目的…………………………………3

课程设计内容……………………………3

游戏总体设计……………………………4

游戏详细设计……………………………6

运行结果…………………………………7

设计心得…………………………………7

设计目的

在《C语言程序设计》课程学习和课程实验的基础上,以及自己的一些课外看书拓展,加上老师的课外辅导与帮助,利用win-TC编程,通过一定代码量的实际编程,巩固和加深对C语言课程的基本知识的理解和掌握掌握C语言编程和程序调试的基本技能利用C语言进行基本的软件设计提高运用C语言解决实际问题的能力

首先用win-TC绘制图形界面,并且用随机初始化将牌布局状态,然后玩家通过移动上下左右键来改变棋盘的布局,最终实现上图中的两种状态之一,即完成游戏。为了增加游戏的人机交互界面,我做出了精美的图形,并插入了按键音,即每当玩家按下一次按键,都伴随着悦耳的按键音,并且主界面的右上方还显示了玩家移动的步数,即玩家每移动一个将牌位置,步数就相应立刻加一,这样便于比较不同玩家实现游戏完成过程的效率。给聪明人实现最少步数完成而留有比较进步的余地。而且,当完成游戏时,游戏界面下方会展示提示完成的字样,即:Congratulations(祝贺)。给玩家获得成就的鼓励,带来惊喜。

游戏总体设计

进入游戏界面

Press up,down,right,left,to move.

Press Esc to quit.

Created By XuYongJie!

根据上下左右按键移动空格的位置,将将牌布局向最终状态靠近,直到与最终两种状态的其中一种相符,也可以中途按又花括号退出。

完成任务,比较最终所移步数,比较得分,退出程序。

Congratulations!

Press up,down,right,left,to move.

Press Esc to quit.

Created By XuYongJie!

游戏详细设计

游戏中用到的数据结构:

Struct state

{

y[3][3];

};

实现功能的子函数:

void initgr(void);

在TC环境下初始化图形界面。

void done_by_self(struct state *);

玩家的有关一系列操作。

通过一个while(1)执行循环,上移,下移,左移,右移。利用计数变量count执行统计步数,并且不停的显示,檫除,实现steps的一步一步显示;如果玩家想要中途退出程序,则需按下右花括号即可,或者完成任务程序也将结束。

int ok(struct state *);

判断是否为最终状态中的第一种;

若是,则返回1,否则返回0。

int ok1(struct state *);

判断是否为最终状态中的第二种;

若是,则返回1,否则返回0;

int row(struct state *);

计算出当前状态空格的行;

返回空格的行数;

int col(struct state *);

计算出当前状态空格的列数;

返回空格的列数;

struct state *up(struct state *p1);

上移操作函数;

返回上移后的状态;

struct state *down(struct state *p1);

下移操作函数;

返回下移后的状态;

struct state *left(struct state *p1);

左移操作函数;

返回左移后的状态;

struct state *right(struct state *p1);

右移操作函数;

返回右

如果觉得《c语言程序设计九宫格 C语言课程设计之智力九宫格.doc》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。