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

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

一、实验项目名称:

       飞机游戏

二、实验项目功能描述(用自己的语言描述):

       通过A、D进行位移,移动飞机,通过按下空格键发射子弹|,使其击中迎面驶来的敌机@,并将其销毁。同时,根据销毁的敌机数量进行计分,在下方显示分数统计。

三、项目模块介绍:

       第一部分:利用函数,实现控制飞机移动;

       第二部分:实现子弹的输出,初始化子弹的位置,并且保证子弹发射后向上移动;

       第三部分:增加敌机,静止的敌机;

       第四部分:让敌机自动向下移动,并且代码保证了降低敌机移动速度的同时不影响用户输入响应的频率;

       第五部分:击中敌机,加一个判断语句,当子弹与敌机位置相同时,即击中敌机,增加变量sore,击中敌机后sore++;

       第六部分:清屏功能,利用void gotoxy(int x,int y)和函数#include<windows.h>,在show()函数中先调用gotoxy(0.0),光标移动到原点重画,实现类似于清屏的功能。

模型:

1581866-20190530200558661-222306845.png
1581866-20190530200604696-253880935.png

四、实现界面展示:

1581866-20190530200624369-544405448.png

五、代码托管链接:

Git网页代码

六、实验总结:

问题1:

  有一次代码上传过之后,发现代码欠缺,更改过后,再次上传过程中遇到困难;

解决方法:

  复制代码上网搜索,找到解决方法,执行 git push –f 命令,强制上传。虽然成功了,但之后我有单独搜索了这个命令,看到了这句话:除非只有自己一个人用,不然用push –force的都该去死。恩,就是这句话,看了解释后,貌似使用不当会导致数据丢失。

问题2:

  代码方面,简单的飞机游戏还可以理解,后面呢个稍微复杂一点的,有点难理解;

解决方法:

  看书,我也上网查了相关的题目及答案,看一些其他人的解决方法,多看,多理解。

感想:

  本周是第二次搞实验,相对于上周,熟练很多,但如果出现更改问题或者其他突发问题,仍然不会解决。对Git的其他命令未掌握。游戏设计方面,本周我看的是飞机游戏,但我直接看第二章的飞机游戏了,一开始没怎么看得懂,后来发现第一章有一个较简单的飞机游戏,然后又从简单的入手,一点一点理解。

学习进度条

周/日期这周所花的时间代码行数学到的知识点简介目前比较迷惑的问题
3/2-3/8三天六小时501、定义、运用文件指针;2、如何打开、关闭文件3、如何读出指定文件中的数据;4、如何向指定文件中写入数据;字符、字符串有什么区别?二者输入、输出有没有很大不同?什么才算字符串?什么算字符?在文件中二者有没有差别?
3/9-3/15四天三小时1801、运用二维数组解决问题,矩阵的判断;2、对一组数的所有子数组求和如何在输出时利用数组的性质
3/16-3/22三天八小时2101、二维数组加深理解,二维数组与矩阵;2、选择排序法解决问题;3、二分查找法二分查找法这周没练习,只是看看书上例题大致懂了,不知道真正应用时能否掌握。
3/23-3/29三天两小时1201、判断回;文2、字符数组的概念及其简单运用;3、一些简单的与字符数组相关的暂时没接触补充知识,一些函数,用法等。在作业运用文件指针时,一开始总是出现从文件里输不出来结果,打印不出来,后来发现可能与自己输入时格式未搞好,本来不应该出现的空格出现了,导致打印不出来结果。文件指针还不是很熟练
3/30-4/5两天1501、指针的含义,变量、地址、指针变量等间的关系;2、指针变量的初始化,运用指针做一些简单运算;3、指针与数组之间的关系在用指针处理字符串时,应怎样定义指针变量
4/6-4/12三天2001、更深一步掌握指针与数组间的关系;2、懂得指针可以实现数组的一些功能;3、指针在碰到字符数组时的应用在代码中,如果遇到要输出单个字符,%s与%c有什么区别? scanf()与 getchar 两种输入方式有区别吗?会不会在有些情况下能影响到输出结果?
4/13-4/19两天1701、学习了与字符串有关的一些字符串处理函数;2、学习了利用指针实现内存动态分配究竟什么情况下采用内存动态分配?具体要采用哪一种动态内存分配?
4/20-4/26两天1351、学习了结构及结构变量的定义与运用如果运用递归函数解决问题,虽然使代码简化了,更美观了。但会导致相同的运算重复进行,占内存。感觉递归弊大于利。
4/27-5/3一天1、复习了结构与数组、指针间的关系,两者之间是如何进行替换利用;
5/4-5/10三天1651、学习了递归程序的设计;2、宏的基本定义;3、文件包含等内容;链表知识点看了看,不是很懂
5/11-5/17三天1481、学习了指针函数、函数指针、指针数组、数组指针;2、讲了链表的部分知识。链表不是很会,可能是书看的少了
5/18-5/24四天2361、学习如何使用Git上传代码,如何在码云中建立仓库;2、学习如何建立本地仓库并将本地仓库与码云上的仓库相连。
5/25-5/31三天2291、学会了简单的飞机游戏,理解了简单的飞机游戏的原理;2、能较熟练的通过Git上传代码。

表格-折线图

时间累计代码行数累计博客字数
第一周80275
第二周50883
第三周1801303
第四周2101849
第五周1201988
第六周1502717
第七周2003000
第八周1702820
第九周1352855
第十周3945
第十一周1654934
第十二周1482654
第十三周2362274
第十四周2292044

1581866-20190530205256392-1512859466.png

转载于:https://www.cnblogs.com/songguanhao/p/10951759.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值