中小学数学卷子自动生成程序——结对编程个人项目互评
本篇博文基于软件工程导论创新课程设计的相关项目作业的要求,对我的结对搭档朱沿臻同学的个人项目——中小学数学卷子自动生成程序进行分析。
一、项目文件构成
本项目源代码文件分别为“main.pp\User.cpp\User.h”,在与项目工程文件相同目录下设置有保存题目的“题库.txt\张三1.txt……”等。
工程文件的User类在User.h和User.cpp中分别实现类的定义和实现,设计到的功能函数和变量定义如下:

对User的用户名、密码、类型变量做了定义,同时地,对于这三个变量数据的获取和修改函数也做了设计,对于用户的登陆做了设定,除此外,对本次程序的主要功能——出卷做了封装。

在main.cpp中,包括一个while循环来对用户的输入进行判定匹配,即“用户登陆”这一过程。

在登陆完毕后,会进行题目类型的选择和卷子生成。

二、代码逻辑分析
本程序运行流程如下:
①控制台显示“请输入用户名密码,中间用空格隔开:”,输入正确则直接进入②,否则提示“用户名或密码输入错误,请重新输入,按回车继续”循环①;

②进入题目类型选择,输入正确则进入③,错误则循环②;

③直接从题库中顺序找题、并将题目字符流输入到已经预先创建好的文件中去。


三、总结与优缺点分析
总结:本项目基本实现相关功能,但是对功能的具体操作并未设计完全。
优点:
①代码简洁,几乎无代码段重复;
②函数复用,一些循环功能的实现通过函数调用来解决;
③类构造清晰,包含赋值构造函数。
缺点:
①程序不具备切换用户功能、无重复出卷功能,同时,对于题目的生成逻辑没有体现,而是通过提前设定的题库来抽取题目生成,由于题库数量有限,必定会造成题目重复(代码中也无题目去重功能);


②程序的逻辑与题目要求有些许的偏差,未准确实现要求的操作功能,例如对生成文件以时间命名等。
总的来说,是一个不错的项目工程,希望以后能够一起进步。

浙公网安备 33010602011771号