下载后可任意编辑C 语言操作题评分方法 1 概述 随着人工智能技术的不断进展,基于人工智能的解决方案被应用到各个领域中。其中教学领域也在引入该技术不断改进教学手段,如计算机辅助教学等。为了提高考试工作效率节约开支和避开老师为学生划定考试范围来应付考试,利用基于题库的考试软件进行考试成为首选。考试系统可以很好的完成选择推断等客观题的考试评卷工作,但在评阅主观试题时效率就显得比较低下。一是主观题往往答案不唯一,利用简单字符匹配很难公平给出成绩。二是当有多个答案时难以逐一列举,同样造成评判不公。 2c 程序设计操作题 考试系统总体设计该系统用户分为两类,分别是学生用户和老师用户。老师用户具有出题评分等权限,学生用户抽题和答题权限。本系统分为出题模块、评分模块、成绩处理和答题模块。当用户登录时可以利用数据库用户表的权限字段加以区分用户角色,然后分配给不同权限。用假如是老师则在主界面显示出题评分等操作,假如是学生用户则显示试题抽取操作,学生抽取试题后进入答题界面。学生答题结束则提交操作后的 c 源文件。 3 阅卷算法的实现 在该系统中除阅卷模块外,其他模块的功能在实现方法上有比较成形的技术都能够比较容易达到设计目标。但对于评卷模块来说,它要完成的是主观操作题的评阅因此实现起来有一定的难度。经过多次的实验和资料查阅,最后选用了人工智能技术来实现。 3.1 基本设计思想对于本系统中主要包含三类操作题分别是程序改错,程序填空和函数编写。每类题的答题点都有可能出现多种答案。可以将每个答题点的答案存放到答案表中,答案表也可以被称为阅卷知识库。对于改错和程序填空题在知识库中每个答题点都可以有多个可选答案相对应,并且不同的答案具有不同的得分权重,由此每个答题点 point 有多个带有不同权重 w 的答案 Ans 构成:point={(Ans1,w1),(Ans2,w2)(Ans3,w3),……,(Ansn,wn)};每个答题点的成1下载后可任意编辑绩最终为某个 Ans 的权重 w 成绩该答题点的分值得出,因此权重 w 取值为[0、1]。对于函数编写题则在答案知识库中与改错和程序填空有一定差别,在该知识库中将答案视为一个文本 t,t 应该由多个关键词 Key 构成。每个关键词 Key组合成 t,每个关键词 Key 在答案文本中有一定的得分比例 percent。由此每个题 的 答 案 可 以 为 :t={(Key1,percent1),(Key2,percent2),(Key3,percent3),……,(Keyn,percentn)};该式中:得分比例累积为 1,该题得分为最...