本次个人项目题目为,中小学数学卷子自动生成程序,我的结对队友Y同学使用的是C++语言。
Y同学最终完成的项目:在交互,账号登陆,切换,题目文件输出都能够基本满足需求;代码思路清晰,结构整洁,函数注释也恰到好处,代码可读性较强。
他的函数大致为DengLu_type( )(登陆初始化函数),Denglu1( ) (用户,密码输入),change_in( )(读取题目数目,切换试卷难度),create_paper( )
(产生试卷),get_time( )(获取当前时间)这几个部分,清晰的表达了其缀写代码时思路与过程。
文件的输出采用的是mkdir命令
if(typ==1) { get_time(); str2=ch; string str3="张三1\\高中"; str1="mkdir "+str3; if (0 != access(str3.c_str(), 0)) system(str1.c_str()); str1=Path; str1+="\\"+str3+"\\"+str2+".txt"; cout<<str1<<endl; output.open(str1.c_str()); }
这些函数,使得其主函数简洁清晰,大大增加了其代码可读性。
//主函数 int main() { // cout<<ch<<endl; get_time(); //获取当前文件目录 getcwd(Path, 200); // cout<<Path<<endl; string input; int typ; typ=Denglu1(); while(1) { cin>>input; while(input=="-1") { typ=Denglu1(); cin>>input; } change_in(typ,input); } return 0; }
但其中也存在些许不足,在退出登陆方面由于其对于死循环考虑不够周全,导致在某些情形下无法退出登陆;经过思考后他最终也寻找到了解决方法。此外
在题目产生方面,他省略了括号的添入,对于初高中的符号要求处理的略有些粗糙。此外,代码重复率过高,也导致他的代码长度有些冗长。
总而言之,Y同学此次个人项目完成情况优秀,其对于该项目花费的精力与代码能力可见一斑。
原文地址:https://www.cnblogs.com/1705zhouwenbo/p/11553080.html
时间: 2024-10-30 20:11:57