Add files via upload

This commit is contained in:
2025-07-16 00:17:05 +08:00
committed by GitHub
parent dc652ffb31
commit 3aee5acbf9
7 changed files with 1150 additions and 11 deletions
+60 -11
View File
@@ -1,6 +1,6 @@
# 学生成绩管理系统
一个功能完整的C语言学生成绩管理系统,支持学生信息管理、成绩统计分析、用户权限控制等功能。
一个功能完整的C语言学生成绩管理系统,支持学生信息管理、成绩统计分析、用户权限控制等功能。采用高度模块化设计,代码结构清晰,易于维护和扩展。
## 📋 目录
@@ -23,24 +23,35 @@
- **用户管理**:多用户登录、权限控制
### 🔧 技术特性
- **模块化设计**:清晰的代码结构,易于维护
- **高度模块化**v2.2版本完成深度模块化重构,功能模块职责清晰
- **工具库分离**:独立的IO、验证、字符串、文件、数学、系统工具模块
- **输入验证**:完善的数据校验机制
- **错误处理**:友好的错误提示和异常处理
- **彩色输出**:美观的控制台界面
- **编译优化**:支持直接编译,无需生成中间.o文件
- **跨平台**:支持Windows、Linux、macOS
## 🏗️ 系统架构
```
学生成绩管理系统
学生成绩管理系统 (v2.2 模块化架构)
├── 用户界面层 (UI Layer)
│ ├── 主菜单 (main_menu.c)
│ └── 辅助功能 (auxiliary.c)
│ └── 学生IO操作 (student_io.c)
├── 业务逻辑层 (Business Layer)
│ ├── 核心处理器 (core_handlers.c)
│ ├── 学生数据管理 (stu_data.c)
│ ├── 学生CRUD操作 (student_crud.c)
│ ├── 学生搜索 (student_search.c)
│ ├── 统计分析 (statistical_analysis.c)
│ └── 用户管理 (user_manage.c)
├── 工具库层 (Utility Layer)
│ ├── IO工具 (io_utils.c)
│ ├── 验证工具 (validation.c)
│ ├── 字符串工具 (string_utils.c)
│ ├── 文件工具 (file_utils.c)
│ ├── 数学工具 (math_utils.c)
│ └── 系统工具 (system_utils.c)
├── 数据访问层 (Data Layer)
│ ├── CSV文件操作
│ └── 数据验证
@@ -66,14 +77,16 @@ cd Stu_scores_system
2. **使用GCC编译**
```bash
gcc -o student_system.exe main.c stu_data.c auxiliary.c statistical_analysis.c main_menu.c globals.c user_manage.c core_handlers.c
gcc -o student_system.exe main.c stu_data.c student_crud.c student_search.c user_manage.c main_menu.c student_io.c core_handlers.c statistical_analysis.c io_utils.c validation.c string_utils.c file_utils.c math_utils.c system_utils.c globals.c
```
3. **使用Makefile编译**
3. **使用Makefile编译v2.2优化版)**
```bash
make
```
> **注意**: v2.2版本的Makefile已优化为直接编译模式,不再生成中间.o文件,编译更快速简洁。
4. **运行程序**
```bash
./student_system.exe # Windows
@@ -131,7 +144,7 @@ teacher:password:0
## 📁 项目结构
```
Stu_scores_system/
Stu_scores_system/ (v2.2 模块化结构)
├── 📁 data/ # 数据文件目录
│ ├── students.csv # 学生数据(CSV格式)
│ └── users.txt # 用户数据
@@ -139,17 +152,27 @@ Stu_scores_system/
├── 📁 MD/ # 文档目录
│ ├── README.md # 项目说明
│ └── CSV_FORMAT.md # CSV格式说明
├── 📁 core/ # 核心模块(已整合)
├── 📁 TXT/ # 文本文档目录
│ ├── 系统说明文档.txt # 系统详细说明
│ └── 代码统计报告.txt # 代码统计分析
├── 📄 main.c # 主程序入口
├── 📄 config.h # 系统配置
├── 📄 globals.c/h # 全局变量
├── 📄 stu_data.c/h # 学生数据管理
├── 📄 student_crud.c/h # 学生CRUD操作
├── 📄 student_search.c/h # 学生搜索功能
├── 📄 student_io.c/h # 学生IO操作
├── 📄 statistical_analysis.c/h # 统计分析
├── 📄 user_manage.c/h # 用户管理
├── 📄 main_menu.c/h # 菜单系统
├── 📄 auxiliary.c/h # 辅助功能
├── 📄 core_handlers.c/h # 核心处理器
├── 📄 Makefile # 编译配置
├── 📄 io_utils.c/h # IO工具库
├── 📄 validation.c/h # 验证工具库
├── 📄 string_utils.c/h # 字符串工具库
├── 📄 file_utils.c/h # 文件工具库
├── 📄 math_utils.c/h # 数学工具库
├── 📄 system_utils.c/h # 系统工具库
├── 📄 Makefile # 编译配置(v2.2优化版)
└── 📄 要求.txt # 需求文档
```
@@ -248,6 +271,32 @@ A: 按照CSV格式要求编辑 `data/students.csv` 文件,程序会自动读
---
**版本**: v2.0.0
**版本**: v2.2.0
**最后更新**: 2025年
**状态**: 稳定版本
## 🆕 v2.2.0 更新内容
### 🔧 模块化重构
- **auxiliary.c完全拆分**:原有的辅助功能模块已完全模块化,拆分为6个专门的工具库
- **新增工具库模块**
- `io_utils`: 输入输出工具函数
- `validation`: 数据验证工具函数
- `string_utils`: 字符串处理工具函数
- `file_utils`: 文件操作工具函数
- `math_utils`: 数学计算工具函数
- `system_utils`: 系统相关工具函数
- **功能模块细分**
- `student_crud`: 学生增删改操作
- `student_search`: 学生查询功能
- `student_io`: 学生数据输入输出
### ⚡ 编译优化
- **Makefile优化**:采用直接编译模式,不再生成中间.o文件
- **编译效率提升**:简化编译流程,减少文件管理复杂度
- **更清洁的构建**:避免.o文件堆积,保持项目目录整洁
### 📈 代码质量提升
- **模块职责更清晰**:每个模块功能单一,便于维护
- **代码复用性增强**:工具库函数可在多个模块间共享
- **依赖关系优化**:减少模块间的耦合度