【技术实现步骤摘要】
编程作业评分方法、装置、电子设备和存储介质
[0001]本申请涉及计算机
,具体而言,涉及一种编程作业评分方法、装置、电子设备和存储介质。
技术介绍
[0002]随着图形化编程软件的不断普及,越来越多的人使用图像化编程软件学习编程。在学习编程的过程中,学生通过图像化编程软件完成并提交相应的编程作业。为了对学生提交的编程作业进行评分,现有的方式是对编程作业的代码进行解析运算,确定编程作业的运行结果。然后将编程作业的运行结果与参考答案对应的代码的运行结果进行对比,根据对比结果对学生提交的编程作业进行评分。然而,上述方式需要预先配置参考答案对应的代码,并且需要完整运行编程作业和参考答案对应的代码,评分效率较低。
技术实现思路
[0003]本申请实施例的目的在于提供一种编程作业评分方法、装置、电子设备和计算机可读存储介质,用以提高对编程作业进行评分的效率。
[0004]第一方面,本专利技术提供一种编程作业评分方法,所述方法包括:获取编程作业的工程文件;基于预设排序规则对所述工程文件中的各代码块进行排序,确定排序后的工程文件;基于所述排序后的工程文件确定所述编程作业的哈希签名;将所述编程作业的哈希签名与哈希签名样本池进行匹配,确定所述编程作业的评分,其中,所述哈希签名样本池包括多个哈希签名及每个所述哈希签名对应的评分。
[0005]在上述实现过程中,首先基于预设排序规则对编程作业的工程文件中的各代码进行排序,确定排序后的工程文件;然后,基于排序后的工程文件确定编程作业的哈希签名,根据编程作 ...
【技术保护点】
【技术特征摘要】
1.一种编程作业评分方法,其特征在于,所述方法包括:获取编程作业的工程文件;基于预设排序规则对所述工程文件中的各代码块进行排序,确定排序后的工程文件;基于所述排序后的工程文件确定所述编程作业的哈希签名;将所述编程作业的哈希签名与哈希签名样本池进行匹配,确定所述编程作业的评分,其中,所述哈希签名样本池包括多个哈希签名及每个所述哈希签名对应的评分。2.根据权利要求1所述的方法,其特征在于,所述基于预设排序规则对所述工程文件中的各代码块进行排序,确定排序后的工程文件,包括:对所述工程文件中的各代码块进行排序,得到各代码串树;其中,每个所述代码串树由一个积木块程序组对应的各代码块组成,且每个所述代码串树中的各代码块按照所述积木块程序组的执行逻辑顺序进行排序;对所述多个代码串树进行排序,得到所述排序后的工程文件。3.根据权利要求2所述的方法,其特征在于,所述对所述工程文件中的各代码块进行排序,得到各代码串树,包括:确定出所述工程文件中的头节点代码块;所述头节点代码块为所述积木块程序组中第一个积木块对应的代码块;判断当前代码块中是否写有下一代码块信息;若有,将该下一代码块信息对应的下一代码块排列于所述当前代码块之后,并将下一代码块确定为新的当前代码块,重复上述过程;其中,第一个当前代码块为所述头节点代码块;若没有,确定当前排序得到的代码块集合为所述代码串树。4.根据权利要求3所述的方法,其特征在于,若当前代码块中存在多个字段中写有下一代码块信息,则:将目标代码块的第i字段中的下一代码块信息对应的下一代码块置于当前代码块之后;其中,所述目标代码块为该存在多个字段中写有下一代码块信息的当前代码块;将下一代码块确定为新的当前代码块,判断该新的当前代码块中是否写有下一代码块信息;若有,将该下一代码块信息对应的下一代码块排列于该新的当前代码块之后,并将下一代码块确定为新的当前代码块,重复上述过程;若没有,将i的取值加1,重复上述过程,直至i的取值等于所述目标代码块中写有下一代码块信息的字段数;其中,所述目标代码块的第i字段为所述目标代码块中写有下一代码块信息的字段。5.根据权利要求2所述的方法,其特征在于,所述对所述工程文件中的各代码块进行排序,得到各代码串树,包括:获取各所述积木块程序组对应的信息摘要;所述信息摘要为由所述积木块程序组对应的代码块的特征信息,按照积木块程序组的执行逻辑顺序组成的信息串;根据各所述信息摘要对所述工程文件中的各代码块进行排序,得到各所述代码串树。6.根据权利要求5所述的方法,其特征在于,获取各所述积木块程序组对应的信息摘要,包括:
确定出所述工程文件中的头节点代码块;所述头节点代码块为所述积木块程序组中第一个积木块对应的代码块;提取当前代码块的特征信息;判断当前代码块中是否写有下一代码块信息;若有,提取该下一代码块信息对应的下一代码块的特征信息,并将该下一代码块的特征信息排列于所述当前代码块的特征信息之后,并将下一代码块确定为新的当前代码块,重复上述过程;其中,第一个当前代码块为所述头节点代码块;若没有,确定当前排列得到的特征信息串为所述信息摘要。7.根据权利要求6所述的方法,其特征在于,若当前代码块中存在多个字...
【专利技术属性】
技术研发人员:王智磊,王宇航,曾鹏轩,
申请(专利权)人:北京思明启创科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。