2019春第一次课程设计实验报告
一、实验项目名称:
用函数实现反弹球消砖块
二、实验项目功能描述(用自己的语言描述):
通过A、D键的位移,使小球($)经过下面的跳板(#)击中砖块(B)。记录下反弹小球数和消掉的砖块数。
三、项目模块介绍:
第一部分:利用函数和游戏框架实现小球的弹跳;
第二部分:利用代码将边框显示出来(即一个游戏区域);
第三部分:实现移动挡板(跳板)的显示;
第四部分:通过小球的坐标判断小球是否被挡板(跳板)接到,若接到则反弹,否则游戏结束;
第五部分:显示砖块,若小球击中砖块则砖块数累加。
模型:
四、实现界面展示:
五、代码托管链接:
Git网页代码
六、实验总结:
问题1:
在第一次使用Git时,出现很多问题,一开始在建立本地仓库时出现卡顿,建立不成功;
解决方法:
复制问题所在处的英文,到百度翻译中理解问题的意思,然后百度问题的解决方法。其中发现有命令代码打错,边看教学视频边打,竟然会把命令代码打错,低级错误。
问题2:
在连接本地仓库与码云上的仓库时,总是显示我有未提交的文件,连接不了;
解决方法:
百度翻译,发现我在连接时,Git默认的文件夹是Git下载时所在的c盘,并不是我建立了仓库的文件夹。然后我询问大佬后,得到回应:在要连接的文件夹中打开Git Bash进行连接。(我一开始看视频时,以为只有在外面开始中打开Git才可以上传、连接)
问题3:
连接时,解决了以上问题后,提示我仓库已经连接了,但文件并没有上传好;
解决方法:
搞了好久,百度,找不到精准方案,然后又请教了他人,答:公钥如果不是最新的,也是无法成功的,于是,又设置了一个新的公钥,然后立马继续上传,终于,经过各种各种的问题,总算会上传代码文件了。
感想:
首次接触,真的是太生疏了。不论是Git,还是游戏设计,还是码云的仓库创建等等。当搞Git搞了两三天后,再看游戏设计的代码时,猛然很多简单代码都不怎么懂了。在利用Git创建本地仓库时,深刻体会命令代码真的是一个字母都错不得,每次不是Git拼错,就是文件名忘记加了后缀,与本地的文件不对应,总之很多问题。不过,这都一点点解决了,以后应该会越来越熟练的。最后,想说一下游戏的代码,因为让我去写,估计我还写不出来,我看着书上的代码,打了之后,发现Dev C++上运行不了(可能我的电脑出故障了),然后我将代码(改了一点点)放到别人的电脑上运行,虽然能运行出来,但好像玩不了,小球的运动轨迹,是有规律的....没弹几下就进行循环....然后,我也没怎么改了,我搜了一下这个游戏的代码,网上的和书上的差不多,然后我的电脑很迟钝,运行起来总是卡顿,就没有再改进了。
学习进度条
周/日期 |
这周所花的时间 |
代码行数 |
学到的知识点简介 |
目前比较迷惑的问题 |
3/2-3/8 |
三天六小时 |
50 |
1、定义、运用文件指针;2、如何打开、关闭文件3、如何读出指定文件中的数据;4、如何向指定文件中写入数据; |
字符、字符串有什么区别?二者输入、输出有没有很大不同?什么才算字符串?什么算字符?在文件中二者有没有差别? |
3/9-3/15 |
四天三小时 |
180 |
1、运用二维数组解决问题,矩阵的判断;2、对一组数的所有子数组求和 |
如何在输出时利用数组的性质 |
3/16-3/22 |
三天八小时 |
210 |
1、二维数组加深理解,二维数组与矩阵;2、选择排序法解决问题;3、二分查找法 |
二分查找法这周没练习,只是看看书上例题大致懂了,不知道真正应用时能否掌握。 |
3/23-3/29 |
三天两小时 |
120 |
1、判断回;文2、字符数组的概念及其简单运用;3、一些简单的与字符数组相关的暂时没接触补充知识,一些函数,用法等。 |
在作业运用文件指针时,一开始总是出现从文件里输不出来结果,打印不出来,后来发现可能与自己输入时格式未搞好,本来不应该出现的空格出现了,导致打印不出来结果。文件指针还不是很熟练 |
3/30-4/5 |
两天 |
150 |
1、指针的含义,变量、地址、指针变量等间的关系;2、指针变量的初始化,运用指针做一些简单运算;3、指针与数组之间的关系 |
在用指针处理字符串时,应怎样定义指针变量 |
4/6-4/12 |
三天 |
200 |
1、更深一步掌握指针与数组间的关系;2、懂得指针可以实现数组的一些功能;3、指针在碰到字符数组时的应用 |
在代码中,如果遇到要输出单个字符,%s与%c有什么区别? scanf()与 getchar 两种输入方式有区别吗?会不会在有些情况下能影响到输出结果? |
4/13-4/19 |
两天 |
170 |
1、学习了与字符串有关的一些字符串处理函数;2、学习了利用指针实现内存动态分配 |
究竟什么情况下采用内存动态分配?具体要采用哪一种动态内存分配? |
4/20-4/26 |
两天 |
135 |
1、学习了结构及结构变量的定义与运用 |
如果运用递归函数解决问题,虽然使代码简化了,更美观了。但会导致相同的运算重复进行,占内存。感觉递归弊大于利。 |
4/27-5/3 |
一天 |
|
1、复习了结构与数组、指针间的关系,两者之间是如何进行替换利用; |
|
5/4-5/10 |
三天 |
165 |
1、学习了递归程序的设计;2、宏的基本定义;3、文件包含等内容; |
链表知识点看了看,不是很懂 |
5/11-5/17 |
三天 |
148 |
1、学习了指针函数、函数指针、指针数组、数组指针;2、讲了链表的部分知识。 |
链表不是很会,可能是书看的少了 |
5/18-5/24 |
四天 |
236 |
1、学习如何使用Git上传代码,如何在码云中建立仓库;2、学习如何建立本地仓库并将本地仓库与码云上的仓库相连。 |
|
表格-折线图
时间 |
累计代码行数 |
累计博客字数 |
第一周 |
80 |
275 |
第二周 |
50 |
883 |
第三周 |
180 |
1303 |
第四周 |
210 |
1849 |
第五周 |
120 |
1988 |
第六周 |
150 |
2717 |
第七周 |
200 |
3000 |
第八周 |
170 |
2820 |
第九周 |
135 |
2855 |
第十周 |
|
3945 |
第十一周 |
165 |
4934 |
第十二周 |
148 |
2654 |
第十三周 |
236 |
2274 |