# 歌手大赛成绩管理系统
## 项目信息
* 项目成员:欧阳鹏、周旭、魏文杰、黄文章
* 来源学校:豫章师范学院
* 项目介绍:歌手大赛成绩管理系统,多功能成绩管理工具,支持包含成绩录入、查询、排行、导出等在内的多个功能,轻松高效分析处理成绩数据
* 开发时间:2021年12月8日
* 开发语言:C语言
* 文档版本:1.3
## Bug修复
* 修复导出成绩单和修改管理员账号密码界面标题错误(12.13)
* 当后台学生数据文件为空时,输出排行提示为空,修复未设置回到菜单(12.14)
* 新增system("pause")功能,优化了用户的交互体验(12.14)
## 程序运行流程
* **管理员登录**
+ **选择或新建比赛项目**
- 学生成绩录入
- 学生成绩查询
- 学生成绩排行
- 导出成绩单(HTML)
- 修改管理员账号密码
- 退出程序
## 功能实现
* **管理员登录**
+ 在 `userData/admin.txt` 中**单行**保存**账号**和**密码**,空格分隔,示例:`admin 12345678`
+ 登录时输入账号和密码,验证通过即可继续操作
* **选择或新建比赛项目**
+ 先判断项目索引文件是否为空,为空则直接进入新建项目模块
+ 不为空时,输出比赛列表,按编号进入对应比赛或新建比赛,弹出菜单
+ 每注册一场比赛,向后台 `userData/workList.txt` 追加比赛编号和名称,每行1条数据,**单行**保存**比赛编号**和**名称**,空格分隔,示例:`第一届歌手大赛总决赛12345`
+ 如用户输入**add**关键字,则进入新建项目模块
* **学生成绩录入**
+ 进入成绩录入状态,可连续输入,每行输入一名学生的成绩和信息
+ 打开文件,每次回车完成一次输入后,计算出最终成绩,将当行数据写入文件
+ 当输入off时,退出录入状态,关闭文件,弹出菜单
+ 输入格式:`long 学号, int 评委数量(小于10), char [10] 姓名, float 评委成绩1, float 评委成绩2 ... float 评委成绩10`
* **学生成绩查询**
+ 输入待查询的学生姓名,读取后台TXT数据,按行遍历文本数据,每次遍历,解析当行学生数据信息,将当行姓名与查询条件进行比较,若匹配成功,则输出当行数据
+ 结束遍历,弹出菜单
* **学生成绩排行**
+ 读取后台TXT数据,按行遍历文本数据,每次遍历,将当行数据解析后保存到结构体数组中,遍历完成后,以结构体的总分项数值为基准,进行冒泡排序,在数组项交换时,中转项应为单个结构体
+ 排序完成后,对结构体数组进行遍历输出,每行一条数据
+ 结尾输出最高分学生成绩信息,弹出菜单
* **导出成绩单**
+ 与成绩排行一样,先进行结构体数组的排序,只不过遍历输出时,输出HTML表格代码,并且将打印信息同时输出至文件中
+ 输出导出文件的路径,弹出菜单
* **修改管理员账号密码**
+ 打开后台文件,获取用户输入,重新写入文件
## 项目文件结构
* **outFile/** -- 成绩单导出
* **projectData/** -- 项目数据文件
* **userData/** -- 用户配置文件
+ **admin.txt** -- 账号密码文件
+ **workList.txt** -- 项目索引文件
* **main.c** -- 程序文件
## 流程图
![](https://sssoyp.coding.net/p/website-items/d/images/git/raw/master/12.13/%E6%AD%8C%E6%89%8B%E5%A4%A7%E8%B5%9B%E6%88%90%E7%BB%A9%E7%AE%A1%E7%90%86%E7%B3%BB%E7%BB%9F%E5%BC%80%E5%8F%91%E6%96%B9%E6%A1%88.png)
## 程序运行详细情况
### 启动程序,输入管理员账号密码,回车登录
![](https://sssoyp.coding.net/p/website-items/d/images/git/raw/master/12.13/%E7%AE%A1%E7%90%86%E5%91%98%E7%99%BB%E5%BD%95.png?download=true)
### 若存在历史项目数据,则提示选择项目或新建项目
![](https://sssoyp.coding.net/p/website-items/d/images/git/raw/master/12.13/%E9%80%89%E6%8B%A9%E6%88%96%E6%96%B0%E5%BB%BA%E9%A1%B9%E7%9B%AE.png?download=true)
### 若程序在后台没有发现历史项目数据,故直接进入新建项目模块,输入项目标题进行创建项目
![](https://sssoyp.coding.net/p/website-items/d/images/git/raw/master/12.13/%E6%96%B0%E5%BB%BA%E9%A1%B9%E7%9B%AE.png?download=true)
### 回车进入项目,弹出菜单面板,输入对应序号执行相应操作
![](https://sssoyp.coding.net/p/website-items/d/images/git/raw/master/12.13/%E8%8F%9C%E5%8D%95.png?download=true)
### 学生成绩录入,输入off结束输入
![](https://sssoyp.coding.net/p/website-items/d/images/git/raw/master/12.13/%E5%AD%A6%E7%94%9F%E6%88%90%E7%BB%A9%E5%BD%95%E5%85%A5.png?download=true)
### 学生成绩查询,输入学生姓名,回车查询
![](https://sssoyp.coding.net/p/website-items/d/images/git/raw/master/12.13/%E5%AD%A6%E7%94%9F%E6%88%90%E7%BB%A9%E6%9F%A5%E8%AF%A2.png?download=true)
![](https://sssoyp.coding.net/p/website-items/d/images/git/raw/master/12.13/%E6%9F%A5%E8%AF%A2%E7%BB%93%E6%9E%9C.png?download=true)
### 输出排行榜
![](https://sssoyp.coding.net/p/website-items/d/images/git/raw/master/12.13/%E6%88%90%E7%BB%A9%E6%8E%92%E8%A1%8C.png?download=true)
### 导出成绩单,输出HTML文件路径
![](https://sssoyp.coding.net/p/website-items/d/images/git/raw/master/12.13/%E5%AF%BC%E5%87%BA%E6%88%90%E7%BB%A9%E5%8D%95.jpg?download=true)
### 输出HTML代码文件
![](https://sssoyp.coding.net/p/website-items/d/images/git/raw/master/12.13/%E8%BE%93%E5%87%BAHTML%E6%96%87%E4%BB%B6.png?download=true)
### 成绩单显示效果
![](https://sssoyp.coding.net/p/website-items/d/images/git/raw/master/12.13/%E6%88%90%E7%BB%A9%E5%8D%95%E6%98%BE%E7%A4%BA%E6%95%88%E6%9E%9C.png?download=true)
### 修改管理员账号密码,回车
![](https://sssoyp.coding.net/p/website-items/d/images/git/raw/master/12.13/%E4%BF%AE%E6%94%B9%E7%AE%A1%E7%90%86%E5%91%98%E8%B4%A6%E5%8F%B7%E5%AF%86%E7%A0%81.jpg?download=true)
没有合适的资源?快使用搜索试试~ 我知道了~
C语言歌手大赛成绩管理系统源码+课程设计报告+项目演示PPT
共8个文件
c:2个
docx:2个
pdf:2个
需积分: 0 0 下载量 132 浏览量
2023-04-11
09:32:44
上传
评论 2
收藏 5.08MB ZIP 举报
温馨提示
歌手大赛成绩管理系统,多功能成绩管理工具,支持包含成绩录入、查询、排行、导出等在内的多个功能,轻松高效分析处理成绩数据。 管理员登录 在 userData/admin.txt 中单行保存账号和密码,空格分隔,示例:admin 12345678 登录时输入账号和密码,验证通过即可继续操作 选择或新建比赛项目 先判断项目索引文件是否为空,为空则直接进入新建项目模块 不为空时,输出比赛列表,按编号进入对应比赛或新建比赛,弹出菜单 每注册一场比赛,向后台 userData/workList.txt 追加比赛编号和名称,每行1条数据,单行保存比赛编号和名称,空格分隔,示例:第一届歌手大赛总决赛12345 如用户输入add关键字,则进入新建项目模块
资源推荐
资源详情
资源评论
收起资源包目录
singer-competition.zip (8个子文件)
singer-competition
程序设计报告书
打印版_歌手大赛成绩管理系统.pdf 1.9MB
歌手大赛成绩管理系统.docx 761KB
上交版本
歌手大赛成绩管理系统课程设计报告书.docx 337KB
歌手大赛成绩管理系统.pdf 1.93MB
项目源代码
方案二(周旭)
main.c 11KB
方案一(欧阳鹏)
main.c 16KB
项目展示
歌手大赛成绩管理系统.pptx 1004KB
README.md 6KB
共 8 条
- 1
资源评论
程序员柳
- 粉丝: 8133
- 资源: 1469
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- (源码)基于OVMS v3的无线控制台系统(WifiConsole).zip
- (源码)基于Arduino和ESP32的IoT计算机开关系统.zip
- (源码)基于Qt框架的PX4飞行控制器固件升级系统.zip
- (源码)基于Spring Boot和Vue的需求管理系统.zip
- 基于深度学习YOLOv5的车牌检测与识别项目源码
- (源码)基于Python的CSGO饰品价格分析与比较系统.zip
- ccs3.3安装补丁SR12-CCS-v3.3-SR-3.3.82.13 2
- (源码)基于Spring Boot框架的攀枝花物流系统.zip
- (源码)基于Spring Boot和Vue的权限管理系统.zip
- (源码)基于Python和HMM的酵母起始密码子预测系统.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功