请利用JAVA和mysql知识并按照下列要求写出完整代码并保证可以正常运行:OnlineTrainingHub是⼀家培训公司。它在多个城市培训了数千名学⽣。培训课程结束后学⽣ 参加测验。⺫前正在使⽤笔和纸的⽅法进⾏测验。然⽽该系统是不⼀致的容易出错和耗时。 Samuel是⼀位IT培训师他希望使⽤Java开发测验管理系统软件。该软件使⽤以下准则 The system is divided into
代码如下:(注释在代码中)
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String language = ""; // 存储选择的语言
while(!language.equals("1") && !language.equals("2")) { // 只有输入1或2才能继续
System.out.println("请选择语言:");
System.out.println("1.中文");
System.out.println("2.英文");
language = scanner.nextLine();
}
// 根据选择的语言加载相应的本地化资源
Localizer.load(language.equals("1") ? "cn.properties" : "en.properties");
String role = ""; // 存储选择的角色
while(!role.equals("1") && !role.equals("2") && !role.equals("3")) { // 只有输入1、2或3才能继续
System.out.println(Localizer.getString("role_select"));
System.out.println("1."+Localizer.getString("admin"));
System.out.println("2."+Localizer.getString("user"));
System.out.println("3."+Localizer.getString("home"));
role = scanner.nextLine();
}
if(role.equals("1")) { // 管理员角色
System.out.println(Localizer.getString("admin_welcome"));
String operation = ""; // 存储选择的操作
while(!operation.equals("3")) { // 只有输入3才能退出
System.out.println(Localizer.getString("admin_operation"));
System.out.println("1."+Localizer.getString("add_question"));
System.out.println("2."+Localizer.getString("view_question"));
System.out.println("3."+Localizer.getString("exit"));
operation = scanner.nextLine();
if(operation.equals("1")) { // 添加问题
System.out.println(Localizer.getString("add_question_instruction"));
// 在这里编写添加问题的代码
} else if(operation.equals("2")) { // 查看问题
System.out.println(Localizer.getString("view_question_instruction"));
// 在这里编写查看问题的代码
}
}
} else if(role.equals("2")) { // 用户角色
String userRole = ""; // 存储用户身份
while(!userRole.equals("1") && !userRole.equals("2") && !userRole.equals("3")) { // 只有输入1、2或3才能继续
System.out.println(Localizer.getString("user_select"));
System.out.println("1."+Localizer.getString("student"));
System.out.println("2."+Localizer.getString("teacher"));
System.out.println("3."+Localizer.getString("back_home"));
userRole = scanner.nextLine();
}
if(userRole.equals("1") || userRole.equals("2")) { // 学生或老师
System.out.println(Localizer.getString("login_instruction"));
// 在这里编写注册和登录的代码
int totalQuestion = 20; // 总问题数
int correctAnswer = 0; // 正确的答案数
for(int i = 1; i <= totalQuestion; i++) { // 循环显示问题
System.out.println(Localizer.getString("question")+i+":");
// 在这里编写显示问题的代码
String answer = ""; // 存储用户的答案
while(!answer.equals("A") && !answer.equals("B") && !answer.equals("C") && !answer.equals("D")) { // 只有输入A、B、C或D才能继续
System.out.println(Localizer.getString("answer_instruction"));
answer = scanner.nextLine().toUpperCase(); // 将答案转换为大写字母
}
// 在这里编写判断答案是否正确的代码,并更新正确答案数
}
double score = (double)correctAnswer / totalQuestion * 100; // 计算得分百分比
System.out.println(Localizer.getString("feedback_instruction"));
// 在这里编写显示反馈的代码
} else { // 返回主界面
main(args);
}
} else { // 返回主界面
main(args);
}
}
}
class Localizer { // 本地化资源存储在properties文件中,这里只是模拟,实际应该从文件中读取 private static String[][] resources = { {"role_select", "Please select your role:"}, {"admin", "Admin"}, {"user", "User"}, {"home", "Home"}, {"admin_welcome", "Welcome, Admin!"}, {"admin_operation", "Please select your operation:"}, {"add_question", "Add question"}, {"view_question", "View question"}, {"exit", "Exit"}, {"add_question_instruction", "Please input the question:"}, {"view_question_instruction", "The questions are:"}, {"user_select", "Please select your role:"}, {"student", "Student"}, {"teacher", "Teacher"}, {"back_home", "Back to home"}, {"login_instruction", "Please register or login:"}, {"question", "Question"}, {"answer_instruction", "Please input your answer:"}, {"feedback_instruction", "The feedback is:"} }; private static String[] currentResource;
public static void load(String resourceName) {
// 加载指定的本地化资源
for(int i = 0; i < resources.length; i++) {
if(resources[i][0].equals(resourceName)) {
currentResource = resources[i];
break;
}
}
}
public static String getString(String key) {
// 获取指定key对应的本地化字符串
for(int i = 0; i < currentResource.length; i += 2) {
if(currentResource[i].equals(key)) {
return currentResource[i+1];
}
}
return "";
}
原文地址: https://www.cveoy.top/t/topic/hlUB 著作权归作者所有。请勿转载和采集!