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.
|
|
5 months ago | |
|---|---|---|
| .. | ||
| README.md | 5 months ago | |
README.md
examSystem
1. 项目简介
这是一个基于C++开发的考试试卷生成系统,支持小学、初中和高中三个不同年级的数学题目自动生成。系统具有用户登录验证、题目生成、文件存储和重复检查等功能。
2. 功能特性
- 用户管理
预置多个测试账户(张三、李四、王五系列)。
支持用户登录验证。
自动关联用户与题目类型。
- 题目生成
小学题目:基础四则运算,支持括号。
初中题目:在小学基础上增加平方和开方运算。
高中题目:增加三角函数(sin、cos、tan)运算。
自动生成2-5个操作数的题目。
智能随机添加括号保证运算优先级计算。
- 文件管理
自动创建用户专属目录。
支持中文用户名路径处理。
题目以时间戳命名保存。
自动检查题目重复性。
3. 系统要求
-
要求需要支持C++17 或更高版本。
-
支持C++17 filesystem的编译器。
-
Windows系统(因使用了Windows API处理中文路径)。
4. 使用说明
- 启动程序
运行编译后的可执行文件,系统将显示欢迎界面。
- 用户登录
使用以下预置账户登录:
小学组:张三1、张三2、张三3(密码:123)
初中组:李四1、李四2、李四3(密码:123)
高中组:王五1、王五2、王五3(密码:123)
- 主要操作
登录成功后,可以进行以下操作:
生成题目:输入10-30之间的数字,生成指定数量的题目
切换类型:输入"切换为小学/初中/高中"来改变题目类型
退出登录:输入"-1"返回登录界面
- 题目保存
生成的题目将自动保存到 papers/用户名/ 目录下,文件名为生成时间戳。
- 项目结构
ExamSystem/
├── main.cpp # 程序入口
├── ExamSystem.h/cpp # 系统主控制器
├── UserManager.h/cpp # 用户管理模块
├── FileHandler.h/cpp # 文件操作模块
├── QuestionGenerator.h/cpp # 题目生成器基类
├── PrimaryGenerator.h/cpp # 小学题目生成器
├── JuniorGenerator.h/cpp # 初中题目生成器
└── SeniorGenerator.h/cpp # 高中题目生成器
- 最后,附带上g++编译指令
g++ -std=c++17 -o exam_system main.cpp ExamSystem.cpp UserManager.cpp FileHandler.cpp QuestionGenerator.cpp PrimaryGenerator.cpp JuniorGenerator.cpp SeniorGenerator.cpp