Advertisement

2048游戏c语言实验报告,2048游戏语言实验报告.doc

阅读量:

2048游戏语言实验报告

成绩评定

教师签名

评定日期

嘉应学院 计算机学院

实验报告

课程名称:

C程序设计

开课学期:

2015—2016学年第1学期

班 级:

计算机1505

指导老师:

陈广明

设计题目:

游戏2048

学生姓名(学号):

第3组:钟瞻佳151110233房嘉泽151110240陈祺151110249

目 录

TOC \o "1-1" \h \z \u HYPERLINK \l "_Toc439007246" 一、实验目的和要求 PAGEREF _Toc439007246 \h 3

HYPERLINK \l "_Toc439007247" 二、实验环境、内容和方法 PAGEREF _Toc439007247 \h 3

HYPERLINK \l "_Toc439007248" 三、程序设计 PAGEREF _Toc439007248 \h 3

HYPERLINK \l "_Toc439007249" 四、源代码 PAGEREF _Toc439007249 \h 3

HYPERLINK \l "_Toc439007250" 五、调试与运行结果 PAGEREF _Toc439007250 \h 4

HYPERLINK \l "_Toc439007251" 六、总结 PAGEREF _Toc439007251 \h 4

一、实验目的和要求

(1)使用C语言编写2048这款游戏。

(2)能够正常运行,拥有游戏界面。

(3)能正常进行游戏从开始到结束。?

(4)用户操作方便。

二、实验环境、内容和方法

实验内容:1、游戏开始时随机产生两个数值为2/4的方格,其中一个方格置于4个角中的一个位置,另一个方格随机的置于其他位置,其他方格置于0。

2、每次按方向键(w,s,a,d)后,逐行计算移动后的方格值。每行移动的算法是:先将所有值为0的数移至行首。能后从行尾开始逐一和前一个数比较,如果相等则合并这2个格子。

3、每合并一次格子,将其值累计到游戏总分中。

4、一次移动结束后,在所有值为0的方格中随机的分配一个2/4的值。

5、所有方格值不为0且上下、左右相邻的方格都不相等,则游戏结束。

6、2出现的概率为70%,4出现的概率为30%。

实验方法:

通过上机操作完成各内容。

实验环境:

实验用PC机一台,使用操作系统为Windows 7/ Windows 8/ Windows10,安装vc++或v2008等编译软件

三、程序设计

方块的格子是否满格或有方块的值为2048?合并相加为一个方块,所有方块再往原来的方向靠拢。靠拢的方向是否有两个相邻的值相等?根据操作方向所有方块在44格子里的范围向一边靠拢键盘(w,s,a,d)操作上下左右方向显示44的游戏方格窗口,并随机产生2个方块。开始

方块的格子是否满格或有方块的值为2048?

合并相加为一个方块,所有方块再往原来的方向靠拢。

靠拢的方向是否有两个相邻的值相等?

根据操作方向所有方块在4*4格子里的范围向一边靠拢

键盘(w,s,a,d)操作上下左右方向

显示4*4的游戏方格窗口,并随机产生2个方块。

开始

Y

刷新4*4窗口,重新显示当前方块内容。

刷新4*4窗口,重新显示当前方块内容。

Y

随机产生一个方块。

随机产生一个方块。

N

N

Y

输出游戏结束。

输出游戏结束。

游戏结束

游戏结束

四、源代码

#include

#include

#include

#include

#define M 2048

void up(); //上操作。

void down(); //下操作。

void right(); //右操作。

void left(); //左操作。

void play(); //操作函数。

void random(); //随机函数。

void integral(int x);//积分函数。

void all_printf(); //输出图像函数。

int A[4][4]={0};

int C=0; //得分的最终数值。

void main()

{

printf(" 游戏规则很简单:\n");

p

全部评论 (0)

还没有任何评论哟~