C博客作业06--结构体&文件
1.本章学习总结
1.1思维导图
1.2本章学习体会
学习了结构和文件,又是懵懵的课了,我的天啊。结构还好,题目集一出就做了,不是很难,感觉掌握的还可以,不过这只是感觉而已,等到真正来写大作业的时候又懵掉了。还有文件,每次老师讲完课都想着回去自己打一下代码感受一下,然而我现在还没感受,这么飘的自己还真是不喜欢。文件这块真的该好好去琢磨一番了。
2.大作业
本次作业要求对小学四则运算程序功能扩展。 扩展功能:小学生用户登录进系统做题。结束答题后,能把该学生答题情况写入文件,并实现排名。
2.1.文件介绍
1.头文件
- 介绍头文件
- 定义一个USE结构体存放用户名,密码,正确率,正确题数,z总题数
- 以及一些函数名的生声明,具体用处截图中有注释
- 截图
2.其他文件介绍
文件1:main.c
- 介绍文件功能及设计思路。
- 作为主函数,里面大多是调用函数
- 设计思路:询问是否有帐号,有的话登录,没有就注册,并将其写入文件
- 成功登录后进入游戏界面,和文件版的内容差不多,多了计算正确率的步骤
- 将用户做的题数以及正确率排名并且输出
- 截图
文件2:Login.c
- 介绍文件功能及设计思路。
- 功能:作为登录文件的函数,里面有三个函数,一个用于注册,一个用于检查,另一个用于检查错误后出现的情况
- 设计思路:询问用户有无账户
- 有账户时,进行检查,看用户是否存在,或者密码是否正确
- 无账户时,注册账户,并且将账户写进文件,然后登录游戏界面
- 截图
文件3:ComputeExp.c
- 介绍文件功能及设计思路。
- 得到式子的文件,整体思路和之前的指针大作业差不多,就是多了一个功能计算正确题数,并且将该值返回
- 截图
文件4:Rank.c
- 介绍文件功能及设计思路
- 功能:实现排名的文件,有三个函数,一个用于排序,一个用于输出,另一个用于写入文件
- 排序的思路和选择排序法是一样的
- 输出这块代码,感觉自己写得过于简单了,然后出来的界面也不是我想要的界面,目前还不是很懂怎么修复
- 写进文件的,虽然写进去了,但写进去的内容和上一个输出的内容一样,是错误的
- 截图
2.2.运行结果
1.登录界面
2.排名结果
2.3改进大作业总结
回顾三次作业编写过程,总结碰到问题及后续程序编写注意事项。
1.碰到问题及解决办法
- 在登录时卡住了,文件那块不是很熟,然后不是很懂怎么写入文件,就只能反复看看书,还有老师之前那篇博客,企图从中得到灵感,虽然好像失败了
- 我的代码的问题还有很多,像在登入时就算原本已有帐号并且帐号密码都是正确的,它还是提醒你这是错误的,所以我进入界面都是直接按注册进去
- 我的代码也没有实现如果注册帐号重复了怎么解决
- 还有排名那块,不是很懂怎么读取,才能将全部的用户的信息都读出来,只能读取当前帐号的用户,而且用户名还读取错误了
- 问题还真是很多,待改进中
2.小结
总结一下:
- 我的文件部分还是很薄弱,书上的例题应该多揣摩一下
- 整个大作业又是一拖再拖了,好像是有思路但是捕捉不住,所以就一直没有开始动
- 这是本学期最后一次博客了,回顾一下之前的博客,好像也都很粗糙,希望下学期不会这么粗糙了!