中小学数学卷子自动生成程序——结队编程队友互相评价
基本功能实现
一.功能要求:
1、命令行输入用户名和密码,核对是否正确。根据账户类型显示,否则系统提示错误信息,重新输入用户名、密码。
2、登录后,系统提示,用户输入选择,用户手动输入题目数量,按下-1退出
3、程序根据输入生成符合的题目的卷子。同一个老师的卷子中的题目不能与以前的已生成的卷子中的题目重复。
4、在登录状态下,实现用户需要切换类型选项的功能并作出提示,系统对新设置的类型进行出题。
5、生成的题目将以特殊形式保存,每个账号一个文件夹。文档内题目以特殊格式存储。
二.登录要求的实现
打开中小学生卷子自动生成程序,进入登录界面,界面如下图所示:
输入2,进行注册的操作:按照要求输入学历,姓名,密码,这里注册为"小学,小王,123456"为测试的用户,注册成功后,会返回登录界面,此时进行登录操作,输入1,回车之后:进入功能要求1的测试:
当输入"小王 12345"(此时的密码错误),会提示输入正确的密码,输入正确密码123456后,成功登录:
下面进行出题目的测试:
输入出题20题目,输入20后,出现了”成功生成题目“的提示,打开桌面的小学文件,在里面可以看到由“小王”名字的文件夹,从中可以看到其生成的按“时间格式”保存的试卷以及一个用来查重复的题库问件。
多次测试可以发现,“小王”用户生成的题目将不会与之前的题目一致,查重功能满足要求。
回到操作界面,切换用户为“初中”,输入“切换为初中”,即可生成初中的题目。
三,优缺点分析:
优点:
1. 界面制作简约,内容完善,让使用者方便操作
2. 生成的题目归类明确,在原有的基础上增加了“注册,修改密码,注销账号”的功能
缺点:
1. 生成的初中,高中题目使用根号,平方以及三角函数的时候没有括号会使其出现歧义
代码分析
一.代码整体分析:
- 代码只采用一个cpp的文件,其中包含了“用户类”以及"管理类",代码整体上十分简洁,清楚明白,这里选择“试卷生成函数”进行分析:试卷的生成处理的非常巧妙,由于需要同时满足三个学历的出题要求,所以关键是怎么减少“代码的重复”,而这里将生成试卷分为了三个随机生成各个学历试卷的函数。后三者里面均是随机出题的函数,而生成文件的一些相同部分的代码重复使用,分离的十分到位。
二.代码格式与规范
1.类名大写,顺序采用了先public后private的顺序,左括号之前留有空格,变量末尾留有_,函数名称明了,空格使用规范,函数封装处理完美。
三.优缺点分析
优点:
1. 语句书写规范,命名规范,注释简洁,代码块之间逻辑关系清晰,增强可读性、易维护性,减少有经验和无经验开发人员编程所需的脑力工作。
2. 文件的生成与使用十分熟练,用了一个“基础路径”,帮助使用者可以方便的使用程序
缺点:
1. 注释部分不完美,在函数前没有看到对应的注释,主要进行了变量的注释,但对于某些无经验的开发人员不能直接"一目了然"。