C语言实现的通讯录管理系统
版权申诉
96 浏览量
更新于2024-07-20
收藏 288KB DOC 举报
"C语言课程设计 学生成绩簿.doc"
这篇文档是一个关于C语言的课程设计报告,涉及的主题是创建一个学生成绩记录簿管理系统。这个系统利用链表数据结构来实现对学生成绩的管理,包括创建、输入、输出、查找和删除等基本操作。设计者旨在通过这个项目提高对自定义函数的理解和运用。
系统的主要功能包括:
1. **建立主界面**:设计了一个友好的用户界面,让用户通过选择不同的选项来执行不同的操作。
2. **switch语句分类处理**:使用switch语句来根据用户的输入执行相应的子函数,如录入成绩、查询成绩、删除成绩和计算平均分等。
3. **子函数与主函数的连接**:各个功能模块(子函数)通过调用来实现与主函数的交互,使得程序流程更加清晰。
4. **成绩录入**:允许用户输入学生的学号、姓名、课程编号和成绩,同时进行了数据合法性检查,确保学号为8位数字,课程编号为5位数字,成绩在0到100之间,学分为1到5之间的实数。
5. **成绩查询**:可以按学号或姓名查询个人成绩,也可以按课程编号查询班级成绩,班级成绩查询还包括平均分、及格率以及各分数段人数和比例的统计。
6. **成绩删除**:能够删除指定学号和课程编号的成绩。
7. **成绩计算**:能计算学生的平均分,为教师和学生提供便利。
8. **数据持久化**:程序启动时会从文件读取已有的成绩数据,如果没有数据则给出提示,每次修改后会将新数据写回文件,确保数据不会丢失。
此外,系统的设计还考虑到了以下性能特点:
- **方便性**:用户操作简单,无需专业知识即可使用。
- **灵活性**:可以适应不同的查询需求,如个人成绩和班级成绩的查询。
- **直观性**:通过界面向用户展示清晰的操作指引和结果。
- **易用性**:设计了人性化的交互界面,使用户易于理解和操作。
扩展功能:
1. **数据加载**:在程序启动时自动从文件加载数据,如果文件为空,则给出相应提示。
2. **数据保存**:每次数据修改都会实时保存到文件,保证数据的安全性。
整个程序的设计和实现基于C语言,通过链表数据结构有效地管理和操作学生成绩,展示了C语言在非数值计算型算法设计中的应用。同时,这也是一次对学生自定义函数理解和链表操作能力的实践训练。
2021-10-07 上传
2022-07-11 上传
2021-10-06 上传
2021-11-18 上传
2021-10-05 上传
2022-11-20 上传
2021-09-29 上传
2022-07-02 上传
2021-10-12 上传
priority_o
- 粉丝: 0
- 资源: 1
最新资源
- 探索数据转换实验平台在设备装置中的应用
- 使用git-log-to-tikz.py将Git日志转换为TIKZ图形
- 小栗子源码2.9.3版本发布
- 使用Tinder-Hack-Client实现Tinder API交互
- Android Studio新模板:个性化Material Design导航抽屉
- React API分页模块:数据获取与页面管理
- C语言实现顺序表的动态分配方法
- 光催化分解水产氢固溶体催化剂制备技术揭秘
- VS2013环境下tinyxml库的32位与64位编译指南
- 网易云歌词情感分析系统实现与架构
- React应用展示GitHub用户详细信息及项目分析
- LayUI2.1.6帮助文档API功能详解
- 全栈开发实现的chatgpt应用可打包小程序/H5/App
- C++实现顺序表的动态内存分配技术
- Java制作水果格斗游戏:策略与随机性的结合
- 基于若依框架的后台管理系统开发实例解析