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 | |
|---|---|---|
| .. | ||
| README.md | 4 months ago | |
| 终端运行说明.md | 4 months ago | |
README.md
中小学数学试卷生成系统
一个基于Java的命令行应用程序,能够根据不同年级自动生成相应难度的数学试卷。
项目简介
这是一个专为中小学教师、学生和家长设计的数学试卷自动生成工具。系统支持小学、初中、高中三个教育阶段,能够生成符合各阶段教学要求的数学题目,并自动保存为试卷文件。
功能特性
🎯 用户管理
- 支持9个预置用户账号(张三1-3、李四1-3、王五1-3)
- 自动识别用户对应的教育级别(小学/初中/高中)
- 安全的用户名密码验证机制
📚 题目生成
- 小学阶段:四则运算、混合运算、带括号运算
- 初中阶段:混合运算、分数运算、方程求解、幂运算和开方
- 高中阶段:二次方程、函数计算、三角函数、概率、数列、导数、复数运算
📄 试卷管理
- 支持生成10-30道题目
- 智能题目去重机制,确保题目不重复
- 按用户分类自动保存试卷文件
- 时间戳命名,便于管理
💻 交互体验
- 友好的命令行交互界面
- 支持切换年级级别
- 用户登出和重新登录功能
技术架构
开发环境
- 编程语言:Java 21
- 开发工具:IntelliJ IDEA
- 项目类型:纯Java控制台应用程序
项目结构
src/com/bx/
├── generator_main/ # 主程序入口
├── manager/ # 业务管理层
├── question/ # 题目相关
│ └── generator/ # 题目生成器
设计模式
- 工厂模式:
QuestionFactory根据难度级别分发题目生成 - 策略模式:不同年级采用不同的题目生成策略
- 分层架构:清晰的职责分离,便于维护和扩展
快速开始
环境要求
- Java 21或更高版本
- 支持UTF-8编码
运行步骤
- 克隆项目到本地
- 使用IntelliJ IDEA打开项目
- 运行
src/com/bx/generator_main/MathExamGenerator.java - 或者使用
java -jar PaperGenerator.jar指令运行提供的jar包 - 使用预置账号登录:
- 小学用户:张三1/123、李四1/123、王五1/123
- 初中用户:张三2/123、李四2/123、王五2/123
- 高中用户:张三3/123、李四3/123、王五3/123
使用流程
- 输入用户名和密码登录系统
- 选择要生成的题目数量(10-30道)
- 系统自动生成相应难度的数学试卷
- 试卷自动保存到
user_papers/{用户名}/目录下
核心功能详解
题目类型
小学题目
- 基础四则运算:
1 + 2 =、5 × 3 = - 混合运算:
2 + 3 × 4 =、(1 + 2) × 3 = - 带括号运算:
(4 + 5) × 2 =、8 ÷ (2 + 2) =
初中题目
- 分数运算:
1/2 + 1/3 =、2/3 × 3/4 = - 方程求解:
2x + 5 = 13、x² - 4 = 0 - 幂运算:
2³ =、√16 =
高中题目
- 二次方程:
x² + 5x + 6 = 0 - 三角函数:
sin(30°) =、cos(45°) = - 函数计算:
f(x) = x² + 2x + 1, f(2) = - 概率统计:基础概率计算题
- 数列计算:等差数列、等比数列
- 导数计算:基础函数求导
- 复数运算:
(2 + 3i) + (1 - 2i) =
特点功能
题目去重机制
系统采用哈希算法确保生成的题目不重复,每份试卷都是独一无二的。
难度自适应
根据用户级别自动调整题目复杂度,确保题目符合相应年级的教学要求。
文件管理
- 按用户分类存储试卷
- 时间戳命名便于查找
- 支持查看历史生成的试卷
扩展开发
添加新题目类型
- 在相应的生成器类中添加新的题目生成方法
- 遵循现有的命名规范和代码风格
- 确保题目符合对应年级的难度要求
添加新用户
- 修改
UserManager.java中的用户列表 - 遵循用户名密码的格式规范
- 指定用户的教育级别
自定义题目数量
系统支持10-30道题目生成,可通过修改 ExamManager.java 中的参数进行调整。
项目优势
教育价值
- 减轻教师出题负担
- 提供个性化练习题目
- 支持不同学习阶段的需求
技术特点
- 零依赖:纯Java实现,无需额外库
- 跨平台:支持所有Java运行环境
- 易扩展:清晰的架构便于功能扩展
- 高可靠:完善的错误处理机制
用户体验
- 简洁的命令行界面
- 直观的操作流程
- 即时的反馈提示
注意事项
- 编码要求:确保系统使用UTF-8编码,避免中文乱码
- 文件权限:确保程序有权限在
user_papers目录下创建文件
- 文件夹会在程序首次运行时自动创建
- 生成的题目文件保存在此文件夹中
- 用户安全:预置密码为演示用途,实际使用请修改
更新日志
第四版 (当前版本)
- 优化题目生成算法
- 修复终端执行jar包显示乱码问题
第三版
- 添加高中题目类型
- 改进文件管理系统
第二版
- 扩展初中题目类型
- 优化用户界面
第一版
- 基础功能实现
- 小学题目生成