2019春第一次课程设计实验报告

本项目设计了一个简单的反弹小球消砖块游戏,小球在长方形框内弹动,通过底部挡板控制反弹,消除顶部砖块。游戏使用了C语言,涉及gotoxy、sleep和getch函数,解决了编译器差异导致的问题。

一、实验项目名称

反弹小球消砖块。

二、实验项目功能描述

1.在一个长方形框内,框的顶部中间有0(小球)和B(砖块),底部有由11个#组成的挡板;
2.程序启动则小球在框内弹动,如果在底部碰到挡板则弹回,反弹小球数加1,在顶部如果小球与砖块位置重合则消去砖块数加1,随机产生新砖块;
3.通过英文状态下输入a控制挡板向左移动一个位置,输入d控制挡板向右移动一个位置;
4.如果小球弹到框的底部没有被挡板挡住,则显示“游戏失败”,游戏结束。

三、项目模块结构介绍

1.源程序由4个预编译命令和一个主函数组成,其中主函数调用了4个函数,分别是startup()show()updataWithoutInput()updataWithInput()
2.其中函数show()中又使用了gotoxy函数(在windows.h中),函数updataWithoutInput()中用了sleep函数(在windows.h中),函数updataWithInput()中用了getch函数(在conio.h中)。

1581791-20190601162238630-370879714.png

四、实现界面展示

挡板一开始是用*组成的,后来我改成了用#
1581791-20190601162655975-682233307.png
1581791-20190601162708479-1397809704.png

五、代码托管链接

代码看这里

贡献截图

1581791-20190601162917895-1980404709.png

六、实验总结

问题

1.编译器有不同,显示sleep函数未定义;
1581791-20190601163538906-611130149.png
解决办法:将s改为S
2.运行时输入a或d控制挡板移动,每输入一次都要按enter键才会移动;
解决办法:输入前将输入法换为英文输入状态。

感想

这是我第一次接触游戏设计,对于游戏设计是完全陌生的,所以这个游戏可以说是完全没有我自己的想法的,但是即使完全照书上写,也并不是完全没问题,在编译的时候会报错,大部分是因为编译器的不同而产生,之后再去网上找解决办法,另外还见到很多没见过的函数,又一一去网上查它们的功能。写完整个游戏后感觉对一个游戏的设计真的要细究到每一个步骤,每一个变化,这是在课堂上不会教的内容。

转载于:https://www.cnblogs.com/LeeMayZ/p/10959991.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值