欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    含源代码北邮程序设计实践第二章消灭星星俄罗斯方块改进实验报告.docx

    • 资源ID:9755138       资源大小:153.88KB        全文页数:9页
    • 资源格式: DOCX        下载积分:3金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    含源代码北邮程序设计实践第二章消灭星星俄罗斯方块改进实验报告.docx

    1、含源代码北邮程序设计实践第二章消灭星星俄罗斯方块改进实验报告程序设计实践实验二:俄罗斯方块改进之消灭星星设计报告 课题名称: 俄罗斯方块改进之消灭星星学生姓名: 班 级: 班内序号: 学 号: 日 期: 目录一、课题概述二、系统设计三、程序设计亮点展示(新增功能) 四、 运行结果分析五、遇到的难题与解决方法 六、总结参考文献一、课题概述 1.1课题目标和主要内容主要内容:根据控制台编程的相关知识,改进俄罗斯方块游戏。目标:以培养学生动手实践能力为目的,重点是在学习C+程序设计和数据结构的基础上,使学生从实践中学习如何综合运用C+和数据结构的相关知识解决实际应用中的问题,了解程序设计的基本思想在

    2、具体实际应用中的体现,掌握分析问题、解决问题的方法,从而提高学生的编程能力,达到编程熟练、会调试、代码书写规范的基本要求,具备简单应用程序的设计、实现能力。平台:Visual studio 2013 API平台。 1.2系统的主要功能改进俄罗斯方块游戏之消灭星星。在俄罗斯方块游戏的基础上做一些改进,加强游戏可玩性,难度和美观性2. 系统设计 程序流程图及描述 主要源文件头文件主要实现功能由这些函数分别实现游戏中各种功能void Init();/初始化工作 void Turn(int a4,int w,int h,int *x,int y); /方块转动bool IsAvailable(int

    3、a,int x,int y,int w,int h); /判定是否能放下/bool IsThesame(int Num,int nextNum /*mMAPW, int a, int x, int y, int w, int h*/); /判定是否颜色相同void DrawBlocks(int a,int w,int h,int x,int y,WORD wColors,int nColors);void ClearSquare(int a,int w,int h,int x,int y);void GameOver();void DeleteLine(int mMAPW,int row);

    4、/消除一行/void ChangeSquare(int *a, int w, int h, int x, int y);/void DrawOthers(int a, int w, int h, int x, int y, WORD wColors, int nColors); 3、程序设计亮点展示亮点一:新增一些按键功能,增加了游戏可玩性#define KEY_BACKSPACE 8#define KEY_ENTER 0xD#define KEY_SPACE 32#define KEY_ALT 18#define KEY_HOME 36如space按键,调用系统函数增加暂停游戏功能:case

    5、 KEY_SPACE: textout(handle, 7 + dx, 10 + dy, wColors, 1, 暂停游戏); system(pause); if (_kbhit() textout(handle, 7 + dx, 10 + dy, wColors, 1, ); break;如tab按键,可使星星有炸弹功能:case KEY_TAB: Num = 1; break;如Backspace按键向上撤回方块:case KEY_BACKSPACE: ClearSquare(&a00, 4, 4, x, y); y-; wColors0 = SQUARE_COLORNum; DrawBl

    6、ocks(&a00, 4, 4, x, y, wColors, 1); /*if (score % 10 & score != 0) DrawOthers(&a00, 4, 4, x, y, wColors, 1); else DrawBlocks(&a00, 4, 4, x, y, wColors, 1); */ break;亮点二:新增炸弹功能if (Num = 1) WORD wColors1 = FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_INTENSITY ; textout(handle, 3 + dx, 8 + dy, wColo

    7、rs, 1, 白色小方块是炸弹); textout(handle, 3.5 + dx, 9 + dy, wColors, 1, 落下后消去一行); _sleep(1500); textout(handle, 3 + dx, 8 + dy, wColors, 1, ); textout(handle, 3.5 + dx, 9 + dy, wColors, 1, ); if (i min(y + 4, MAPH - 1) DeleteLine(map, i); score+; bomb+; textout(handle, 26 + dx, 17 + dy, wColors, 1, itoa(bom

    8、b, string, 10);亮点三:新增高难度星星/11种不同形状的方块int b1144 = 0, 1 , 1, 1, 1 , 2 , 3,3,0,3,3, 0,0,4,4,4,4, 0,5,5,5,5, 6,6,6,6, 7,7,7,7, 8,0,8,8,0,8, 9,9,0,9, 0,10,10,0, 10,0,0,10, 11 , 11, 11, 11 , ;WORD SQUARE_COLOR11 = FOREGROUND_RED|FOREGROUND_INTENSITY, FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE | F

    9、OREGROUND_INTENSITY, FOREGROUND_BLUE|FOREGROUND_INTENSITY, FOREGROUND_RED|FOREGROUND_INTENSITY, FOREGROUND_RED|FOREGROUND_BLUE|FOREGROUND_INTENSITY, FOREGROUND_GREEN|FOREGROUND_BLUE|FOREGROUND_INTENSITY, FOREGROUND_RED | FOREGROUND_BLUE | FOREGROUND_INTENSITY, FOREGROUND_BLUE | FOREGROUND_INTENSITY,

    10、 FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_INTENSITY, FOREGROUND_GREEN | FOREGROUND_INTENSITY, FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE | FOREGROUND_INTENSITY, ; 四、 运行结果分析运行效果:在经典游戏俄罗斯方块上的改进使消灭星星游戏更加有可玩性,友好用户交互界面。新增星星加强了游戏的挑战性,炸弹功能和转化炸弹功能又一定程度加强了可玩性。5、遇到的难题与解决方法难题一:如何增加炸弹功能?解决方式在主函数放

    11、下方块之后的语句加一个判断,如果落下的是指定炸弹方块,调用消行函数,并且输出语句。特别是为了避免输出语句显示太短使系统sleep一段时间难题二:如何能使系统暂停?查阅资料后调用系统函数system(pause);解决。难题三:如何能使新加的星星形状正常运行?在经过一次次尝试后发现某些形状的星星并不适用于turn这个函数,所以选定了最后这三个难题四:如何撤回下落的方块?类比于方块下落时的擦除和重新画,只需修改坐标变化即可六、总结本次课题相对上次的课题难度加大不少,特别是要做出一个完整的可以操作的游戏,还需要复习大一学习的c+内容,查阅不少资料。在同学们一次又一次的讨论摸索下,渐渐摸索出来了一步有一步。 通过这次游戏的编程,让我又学会了一种更复杂的逻辑编译办法。在学习编程过程中,锻炼了自己独立思考和解决问题的能力得,也会影响到以后各科的学习,甚至是终生有益。五、参考文献1徐惠民等,C+高级语言程序设计案例与实践辅导,北京:人民邮电出版社,20122徐雅静等,数据结构与stl,北京:北京邮电大学,20113徐惠名等,C+高级语言程序设计,北京,人民邮电出版社,2012


    注意事项

    本文(含源代码北邮程序设计实践第二章消灭星星俄罗斯方块改进实验报告.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开