《程序设计应用基础》设计报告俄罗斯方块Word文档格式.docx

上传人:b****3 文档编号:14358426 上传时间:2022-10-22 格式:DOCX 页数:23 大小:51.12KB
下载 相关 举报
《程序设计应用基础》设计报告俄罗斯方块Word文档格式.docx_第1页
第1页 / 共23页
《程序设计应用基础》设计报告俄罗斯方块Word文档格式.docx_第2页
第2页 / 共23页
《程序设计应用基础》设计报告俄罗斯方块Word文档格式.docx_第3页
第3页 / 共23页
《程序设计应用基础》设计报告俄罗斯方块Word文档格式.docx_第4页
第4页 / 共23页
《程序设计应用基础》设计报告俄罗斯方块Word文档格式.docx_第5页
第5页 / 共23页
点击查看更多>>
下载资源
资源描述

《程序设计应用基础》设计报告俄罗斯方块Word文档格式.docx

《《程序设计应用基础》设计报告俄罗斯方块Word文档格式.docx》由会员分享,可在线阅读,更多相关《《程序设计应用基础》设计报告俄罗斯方块Word文档格式.docx(23页珍藏版)》请在冰豆网上搜索。

《程序设计应用基础》设计报告俄罗斯方块Word文档格式.docx

采用结构体数组。

(1)数据添加模块;

(2)数据显示模块;

(3)数据删除模块;

(4)数据查询模块;

(5)数据修改模块。

成员分工

设计工作

计划与进

度安排

5月29日:

设计算法,并验证。

5月30日:

完成程序。

6月1日:

检查程序是否满足设计要求并完善。

6月6日:

完成设计报告。

设计考核

要求

1编写程序,调试,测试

2完成设计报告

3完成答辩

俄罗斯方块

摘要:

俄罗斯方块是一款老少皆宜,悠闲生活的游戏,是一款电脑游戏机和掌上游戏机游戏,当我们工作累了,无聊的时候,都可以通过俄罗斯方块来进行放松,操作界面简洁美观,易于操作。

程序用了条件、循环、结构体等知识点。

可运用于小的管理软件。

软件运用菜单实现交互式管理,用户轻松的按键既可实现对软件的操作,操作简单易懂,功能丰富,可以很好的满足的需要。

通过对通讯录管理系统的设计,进一步理解和掌握C语言这门课程的知识点,能够熟练的调用各种函数,把各种C语句有机的结合起来,提高自己C语言程序设计的能力,为今后解决实际问题打下良好基础。

关键词:

俄罗斯方块;

结构体;

条件语句;

循环结构;

指针

1引言

学习了C语言程序设计这门课程之后,使我对程序设计有了一定的了解,为了熟练掌握C语言的语法特点、及其数据结构,提高自身编写程序的能力。

通过课程设计实现理论知识与实际情况的结合,使所学知识能够在现实社会中起到一定的作用,防止所编写的程序脱离实际,让程序可以更好的发挥作用,以便减轻实际工作中所遇到的繁琐步骤,提高现实工作中的效率。

此外通过课程设计提高逻辑思考能力和解决实际问题的能力。

程序设计中,语句的语法和常量变量的定义都有严格的要求,有时输了一个中文标点、打错了一个字母,编译就不通过,程序无法正常运行。

因此,程序设计初学阶段,学生经常会犯这样的错误,可能要通过几次乃至十多次的反复修改、调试,才能成功,但这种现象会随着学习的深入而慢慢改观。

这当中就有一个严谨治学、一丝不苟的科学精神的培养,又有一个不怕失败、百折不挠品格的锻炼。

俄罗斯方块程序是一款老少皆宜的游戏。

通过程序设计,达到理论与实际应用相结合,提高对程序的分析能力,能够根据实际应用,初步实现系统功能模块及算法的设计,通过编程基本实现俄罗斯方块程序。

2设计方案

2.1设计思路

建立一个函数,用来添加、显示、删除、查询、修改等信息,完成通讯录的功能。

主函数可以调用五个子函数,分别完成添加记录、显示记录、删除记录、查询记录、修改记录、退出系统等功能。

在主函数中可以以1、2、3、4、5、数字键分别可以执行某个功能模块3程序设计与实施

3.1根据该流程图定义数据类型建立函数

typedefstruct

{

charname[11];

//姓名

charscore;

//分数

charrank;

//等级

}Person;

3.2主函数及其流程图

定义主函数main()和一系列的功能函数,只有通过这些函数才可实现程序的功能。

每次

使用都会调用主函数。

主函数主要是利用功能函数对数据进行处理,流程图如下图3.1所示。

图3.1main函数流程图

3.3其余各个功能函数及其流程图

 

图3.2newblock函数调用流程图

图3.3move函数的流程图

图3.4check函数的流程图

4设计结果与分析

首先在头文件里将5种方块类型进行定义

将源程序编译、链接后生成可执行文件,运行该文件会看到如下图所示界面

然后会出现两个界面,

左边为游戏操作界面,右面为内容显示界面,分别是下一个方块,分数,等级和操作说明

游戏开始时,程序会执行next_block随机形成方块在执行new_block将方块从next_block种取出,取出后开始执行move函数,操作者对方块进行上下左右控制方块move函数判断你是否按下,获得按下的键位的值(就是上下左右那个键),执行对应的游戏方向的控制

当方块运动时,draw_block会在指定位置画出方块Check函数会检查方块是否还可以向下,当无法向下时,mark函数执行,方块固化

Check()会检查是否存在一行都是方的,如果是,clear_block会清除,同时会add_sorce(t),add_rank()

5源程序

#ifndefBLOCK_H#defineBLOCK_H#include<

stdio.h>

#defineBLOCK_COUNT//5方块种类

#defineBLOCK_WEIGHT//5方块宽度

#defineBLOCK_HIGHT5//方块宽度

#defineUNIT_SIZE20//方块大小

intcolor[BLOCK_COUNT]={

GREEN,CYAN,MAGENTA,BROWN,YELLOW};

#defineUP72

#defineLEFT75

#defineRIGHT77

#defineDOWN80

#defineSPACE32

#defineSTART_X130

#defineSTART_Y30

#defineminx30

#defineminy30

int

score=0;

//分数

rank=0;

Next_index=-1;

//下一个方块

Block_index=-1;

//当前方块

speed=500;

visit[30][15];

Markcolor[30][15];

//对应位置的颜色

typedefenum{定义一开方向BLOCK_UP,BLOCK_RIGHT,BLOCK_DOWN,BLOCK_LEFT

}BLOCK_Dir;

typedefenum{MOVE_DOWN,MOVE_LEFT,MOVE_RIGHT

}MOVE_DIR;

intblock[BLOCK_COUNT*4][BLOCK_WEIGHT][BLOCK_HIGHT]={四?

种?

形?

态?

?

//|

0,0,0,0,0,

0,0,1,0,0,

0,0,1,0,0},{

0,0,0,0,0,

0,1,1,1,0,

0,0,0,0,0

},

{0,0,0,0,0,

0,0,1,0,0,

0,0,1,0,0},

//L形方块

0,0,1,1,0,

0,1,0,0,0,

0,1,1,0,0,

0,0,0,1,0,

//田形方块

//T形方块

//Z形方块

},{0,0,0,0,0,

0,0,0,0,0},

0,0,0,0,0}

};

#endif

#include<

graphics.h>

string>

Windows.h>

time.h>

conio.h>

#include"

block.h"

voidwelcome(){initgraph(550,660);

HWNDhwnd=GetHWnd();

SetWindowText(hwnd,_T("

俄罗斯方块"

));

微软雅黑"

setcolor(WHITE);

settextstyle(40,0,_T(

outtextxy(205,200,_T("

Sleep(2000);

}

/*初始化游戏场景*/

voidinitgame(void){

charstr[16];

//清除屏幕cleardevice();

rectangle(27,27,336,635);

rectangle(29,29,334,633);

//定位游戏方框

rectangle(370,50,515,195);

settextstyle(24,0,_T(setcolor(LIGHTGRAY);

outtextxy(405,215,_T(

setco

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 冶金矿山地质

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1