【修改】 C语言试卷分析文本变更

This commit is contained in:
MSI\letre
2025-07-07 14:17:39 +08:00
parent f30049d883
commit 8743817fdf

View File

@@ -67,12 +67,12 @@ public class JudgementServiceImpl implements JudgementService
// 创建log文件txt用于记录
LogFileUtils.createFile(pathC + "/log.txt");
String code = JudgementCUtils.readFile(pathC, fileName);
LogFileUtils.writeLine("✅ 系统开始读取文件:" + code);
judgementStr = HtmlAppender.appendHtmlLine(judgementStr, "✅ 系统开始读取文件:" + code);
LogFileUtils.writeLine("✅ 系统开始读取学生考试文件:" + code);
judgementStr = HtmlAppender.appendHtmlLine(judgementStr, "✅ 系统开始读取学生考试文件:" + code);
if (code == "") {
// 如果没有读到源码
LogFileUtils.writeLine("❌ 系统没有读取到文件。");
judgementStr = HtmlAppender.appendHtmlLine(judgementStr, "❌ 系统没有读取到文件。");
LogFileUtils.writeLine("❌ 系统没有读取到学生考试文件。");
judgementStr = HtmlAppender.appendHtmlLine(judgementStr, "❌ 系统没有读取到学生考试文件。");
LogFileUtils.close();
// 该题不得分直接算成0分
@@ -94,8 +94,8 @@ public class JudgementServiceImpl implements JudgementService
Map<String, Object> item = new HashMap<>();
item.put("success", keyword_run);
item.put("score_rate", examQuestionKeyword.getScoreRate());
LogFileUtils.writeLine("✅ 关键字比对:" + examQuestionKeyword.getKeyword() + "--" + keyword_run);
judgementStr = HtmlAppender.appendHtmlLine(judgementStr, "✅ 关键字比对:" + examQuestionKeyword.getKeyword() + "--" + keyword_run);
LogFileUtils.writeLine("✅ 关键字比对:" + examQuestionKeyword.getKeyword() + "--" + (keyword_run ? "正确" : "错误"));
judgementStr = HtmlAppender.appendHtmlLine(judgementStr, "✅ 关键字比对:" + examQuestionKeyword.getKeyword() + "--" + (keyword_run ? "正确" : "错误"));
weight += Integer.parseInt(examQuestionKeyword.getScoreRate());
key_list.add(item);
}
@@ -122,8 +122,8 @@ public class JudgementServiceImpl implements JudgementService
// 编译代码运行
if (is_pass) {
// 如果使用程序编译,进行程序编译
LogFileUtils.writeLine("正在使用-std=c99进行编译...");
judgementStr = HtmlAppender.appendHtmlLine(judgementStr, "正在使用-std=c99进行编译...");
LogFileUtils.writeLine("使用c99标准进行编译...");
judgementStr = HtmlAppender.appendHtmlLine(judgementStr, "使用c99标准进行编译...");
// 使用C99 运行并得出结果
String code_return = JudgementCUtils.run_code(pathC,code,null,"-std=c99", "编译通过运行");
@@ -146,8 +146,8 @@ public class JudgementServiceImpl implements JudgementService
// 运行完成后在判断是否需要进行关键字比对
boolean run_code = false;
List<Boolean> runList = new ArrayList<>();
LogFileUtils.writeLine("✅ 使用测试用例进行判分...");
judgementStr = HtmlAppender.appendHtmlLine(judgementStr, "✅ 使用测试用例进行判分...");
LogFileUtils.writeLine("✅ 使用c99标准进行测试用例编译...");
judgementStr = HtmlAppender.appendHtmlLine(judgementStr, "✅ 使用c99标准进行测试用例编译...");
for (ExamQuestionAnswer examQuestionAnswer : examQuestion.getAnswerList()) {
// 使用C99 运行并得出结果
String code_return = JudgementCUtils.run_code(pathC,code, examQuestionAnswer.getContentIn(),"-std=c99",null);