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.
zhouyutong d826086546
initial commit: add existing project files
5 months ago
..
README.md initial commit: add existing project files 5 months ago

README.md

个人项目:中小学数学卷子自动生成程序

项目信息

  • 班级[软件2301]
  • 姓名[周禹彤]
  • 学号[202326010102]
  • 项目名称:中小学数学卷子自动生成程序
  • 提交时间2025年9月29日

项目简介

本项目是一个命令行界面的中小学数学卷子自动生成程序,主要为小学、初中和高中数学老师提供便捷的题目生成服务。系统支持用户登录验证、题目生成、难度切换、题目查重和文件保存等功能。

功能特性

1. 用户认证

  • 支持小学、初中、高中各三个预设账户登录
  • 用户名和密码验证
  • 登录成功后显示当前出题类型

2. 题目生成

  • 小学题目:支持 +、-、*、/ 四则运算,包含括号
  • 初中题目:至少包含平方或开根号运算符
  • 高中题目:至少包含 sin、cos、tan 三角函数
  • 题目数量范围10-30道
  • 操作数范围1-100

3. 功能操作

  • 切换难度:支持在登录状态下切换小学、初中、高中三种难度
  • 题目查重:检查新生成题目与历史题目是否重复
  • 文件保存:按用户分文件夹保存,文件名格式:年-月-日-时-分-秒.txt

项目结构

软件2301_周禹彤_个人项目
├── src
│   ├── main.cpp                 # 应用程序入口点
│   ├── auth.cpp                 # 认证系统实现
│   ├── file_manager.cpp         # 文件管理器实现
│   ├── question_generator.cpp   # 题目生成器实现
│   ├── user.cpp                 # 用户类实现
│   ├── auth.h                   # 认证系统头文件
│   ├── file_manager.h           # 文件管理器头文件
│   ├── question_generator.h     # 题目生成器头文件
│   ├── user.h                   # 用户类头文件
│   └── utils.h                  # 工具函数头文件
└── doc
    └── README.md                # 项目文档

类设计说明

1. AuthSystem (认证系统)

  • 负责用户登录验证
  • 管理预设用户账户
  • 提供用户身份验证功能

2. QuestionGenerator (题目生成器)

  • 根据难度级别生成相应题目
  • 支持小学、初中、高中三种难度
  • 确保题目符合各难度要求

3. FileManager (文件管理器)

  • 处理文件保存操作
  • 实现题目查重功能
  • 管理用户文件夹结构

4. User (用户类)

  • 封装用户信息
  • 提供用户权限管理
  • 支持难度切换

编译运行

环境要求

  • C++17 或更高版本
  • GCC 编译器
  • 支持文件系统操作的操作系统

编译命令

cd src
make