You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
4 months ago | |
|---|---|---|
| .idea | 4 months ago | |
| src | 4 months ago | |
| README.md | 4 months ago | |
README.md
中小学数学学习软件
项目简介
这是一个基于Java Swing开发的中小学数学学习软件,支持小学、初中和高中三个学段的数学题目生成和答题功能。软件采用MVC架构设计,具有良好的用户界面和用户体验。
功能特性
1. 用户注册与登录
- 用户通过邮箱进行注册
- 注册时发送验证码到邮箱(模拟)
- 密码要求:6-10位,必须包含大小写字母和数字
- 登录状态下可以修改密码
2. 题目生成
- 根据用户选择的学段(小学、初中、高中)生成相应难度的数学题目
- 题目全部为选择题形式
- 同一张试卷不能有相同题目
3. 答题功能
- 界面显示题目和四个选项
- 用户选择答案后提交
- 自动跳转到下一题
- 最后一题提交后显示分数
4. 分数统计
- 根据答对的百分比计算分数
- 显示详细答题结果
- 提供继续做题或退出选项
技术架构
MVC架构
- Model(模型): User, Question, QuestionGenerator等业务逻辑类
- View(视图): 各种Swing界面类(LoginFrame, MainFrame等)
- Controller(控制器): 事件处理逻辑和业务协调
核心类说明
- MainApplication: 程序入口点
- LoginFrame: 登录界面
- RegistrationFrame: 注册界面
- MainFrame: 主界面(学校类型选择)
- QuestionCountFrame: 题目数量设置界面
- QuizFrame: 答题界面
- ScoreFrame: 分数显示界面
- ChangePasswordFrame: 修改密码界面
题目生成器
- QuestionGenerator: 题目生成器基类
- PrimarySchoolGenerator: 小学题目生成器
- MiddleSchoolGenerator: 初中题目生成器
- HighSchoolGenerator: 高中题目生成器
运行要求
- Java 8或更高版本
- 支持Swing的桌面环境
运行方式
直接双击运行项目根目录下的run_jar.bat批处理文件即可启动程序。
使用说明
1. 注册新用户
- 启动程序后进入登录界面
- 点击"注册"按钮
- 输入邮箱地址,点击"发送验证码"
- 输入收到的验证码
- 设置符合要求的密码
- 完成注册
2. 登录系统
- 输入已注册的邮箱和密码
- 点击"登录"按钮
3. 选择学校类型
- 登录后进入主界面
- 选择小学、初中或高中
4. 设置题目数量
- 输入需要生成的题目数量(1-50)
- 点击"开始答题"
5. 答题
- 阅读题目和选项
- 选择认为正确的答案
- 点击"下一题"继续
- 最后一题点击"提交答案"
6. 查看结果
- 系统显示得分和正确率
- 可以选择"继续做题"或"退出"
项目结构
B1/
├── src/ # 源代码目录
│ ├── MainApplication.java # 程序入口
│ ├── LoginFrame.java # 登录界面
│ ├── RegistrationFrame.java # 注册界面
│ ├── MainFrame.java # 主界面
│ ├── QuestionCountFrame.java # 题目数量设置
│ ├── QuizFrame.java # 答题界面
│ ├── ScoreFrame.java # 分数显示
│ ├── ChangePasswordFrame.java # 修改密码
│ ├── UserManager.java # 用户管理
│ ├── User.java # 用户类
│ ├── Question.java # 题目类
│ ├── QuestionGenerator.java # 题目生成器基类
│ ├── PrimarySchoolGenerator.java # 小学题目生成器
│ ├── MiddleSchoolGenerator.java # 初中题目生成器
│ ├── HighSchoolGenerator.java # 高中题目生成器
│ ├── MathCalculator.java # 数学计算器
│ └── FileManager.java # 文件管理
├── .gitignore # Git忽略文件
└── README.md # 项目说明
开发规范
- 代码规范: 遵循Java编码规范
- 类设计: 每个类职责单一,符合面向对象设计原则
- 方法长度: 方法代码行数不超过40行
- 注释: 重要方法和类添加必要的注释
注意事项
- 本项目不使用数据库存储数据,用户数据存储在文件中
- 验证码发送功能为模拟实现,实际使用时需要集成邮件服务
- 题目生成和计算功能为简化实现,实际应用需要更完善的数学表达式解析
版本信息
- 版本: 1.0
- 开发语言: Java
- UI框架: Swing
- 架构: MVC