学生成绩档案管理系统(预习)
学生成绩档案管理系统
- 实验任务
- 需求分析
- 开发环境
- 设计思路
- 相关算法
实验任务
1.学生信息录入,信息包括学号、姓名、专业、四门课成绩、总分、名次;系统可对学生信息浏览、增加、删除和修改;
2.按学生成绩确定名次及信息输出,双向冒泡排序、希尔排序、快速排序、堆排序。
3.要求可对学生信息查询,根据学号或姓名进行查找;
4.信息修改仅可修改四门课成绩;
5.文件存取学生信息。
需求分析
• 新增学生信息(包括学号、姓名、专业、4门成绩)
• 浏览学生信息(对学生排序后信息进行浏览)
• 删除学生信息(删除指定学生的信息,可给用户选择检索指定项)
• 查找学生信息(查找符合条件的某条记录)
• 保存学生信息(保存学生成绩档案信息到文本文件)
• 加载学生信息(登录系统后将磁盘文件中保存的学生成绩信息读取到内存中)
开发环境
设计语言:java
开发工具:IDEA
设计思路
创建一个Java的Student类,Student类中包含学号、姓名、专业,四门课成绩,总分、名次。
用集合的方法对对象进行初始化。
将排序方法写在dao类中。
相关算法
双向冒泡排序:
传统冒泡气泡排序的双向进行,先让气泡排序由左向右进行,再来让气泡排序由右往左进行,如此完成一次排序的动作,使用两个旗标来记录左右两端已排序的元素位置。
希尔排序
希尔排序是将待排序的数组元素 按下标的一定增量分组 ,分成多个子序列,然后对各个子序列进行直接插入排序算法排序;然后依次缩减增量再进行排序,直到增量为1时,进行最后一次直接插入排序,排序结束。
快速排序
通过一趟排序将待排记录分隔成独立的两部分,其中一部分记录的关键字均比另一部分的关键字小,则可分别对这两部分记录继续进行排序,以达到整个序列有序。
堆排序
利用堆这种数据结构所设计的一种排序算法。堆是一个近似完全二叉树的结构,并同时满足堆的性质:即子结点的键值或索引总是小于(或者大于)它的父节点。
学生成绩档案管理系统(预习)相关推荐
- 《数据结构课程实践》_01_学生成绩档案管理系统_准备工作
01_学生成绩档案管理系统_准备工作 一.实验题目与要求 二.编程语言以及开发环境 三.实验思路 1. 思考初始化数据处理 2. 学生对象处理 3. 操作处理 4. 方法描述 四.预习小结 一.实验题 ...
- 题目1:学生成绩档案管理系统(代码实现)
文章目录 Database Accounts Accounts AccountsInOut Student Student StudentSys DAO AccountsDao StudentDao ...
- 题目1:学生成绩档案管理系统(实验准备)
数据结构课程实践系列 题目1:学生成绩档案管理系统(实验准备) 题目2:隐式图的搜索问题(A*算法解决八数码) 题目3:文本文件单词的检索与计数(实验准备) 文章目录 数据结构课程实践系列 题目1:学 ...
- 《数据结构课程实践》_01_学生成绩档案管理系统_实现
01_学生成绩档案管理系统_实现 一.实验题目 二.编程语言以及开发环境 三.源代码 1.学生类 2.自定义数据库类 3.数据操作类 4.总服务类 5. main类 四.运行结果 五.实验小结 一.实 ...
- 学生成绩档案管理系统
学生成绩档案管理系统 实验要求 实验设计 实验分析 初步分析 算法设计 快速排序 双向冒泡排序 堆排序 希尔排序 实验要求 • 学生信息录入,信息包括学号.姓名.专业.四门课成绩.总分.名次: • 系 ...
- 学生成绩档案管理系统(准备+结果)
文章目录 一.实验任务及其实现功能 需求分析 二.开发工具及编程语言 1.开发工具 编程语言 三.算法分析 1.双向冒泡排序 2.希尔排序 3.快速排序 4.堆排序 参考资料 四.源代码 Pojo D ...
- #数据结构与算法 第一小题 学生成绩档案管理系统
写了一天,非常得没有效率,比较粗糙,注释不太丰富,但应该足以理解.强调:如有雷同,肯定被我参考了.不会写博客,以后会学习,这次就这样了.io参考链接:https://www.cnblogs.com/p ...
- 项目实战:PB/ORACLE:C/S架构 学生成绩教务管理系统
项目实战:PB/ORACLE:C/S架构 学生成绩教务管理系统 目录 项目实战:PB/ORACLE:C/S架构 学生成绩教务管理系统 1.编辑环境: 2.项目: 3.项目简介: 4.其他: 5.项目运 ...
- 基于JavaWeb学生成绩信息管理系统(附源码资料)-毕业设计
1. 适用人群 本课程主要是针对计算机专业相关正在做毕业设计.或者是需要实战项目的Java开发学习者. 2. 你将收获 提供:项目源码.项目文档.数据库脚本.软件工具等所有资料(在平台的课程附件中进行 ...
最新文章
- 公元2019年,你对AI的信任有几分?
- RecyclerView + SnapHelper实现炫酷ViewPager效果
- 复合机 涂布机_涂布复合机适用的范围在那些地方?
- git 命令详解_再次学习Git版本控制工具
- python (六)函数
- easyui结合java,Spring+SpringMVC+MyBatis+easyUI整合基础篇(二)牛刀小试
- Android MediaPlayer 播放音频
- 专访阿里云雁杨:因需求而进化,ECS云服务器追求弹性极致
- 怎么重置unity界面_请问itween如何重置?
- mysql 堆表_Mysql聚集索引和非聚集索引(堆组织表和索引组织表)
- alisql mysql_AliSQL · 特性介绍 · 动态加字段
- PR视频编辑软件Premiere软件安装包下载地址及安装教程
- GitHub代理设置
- 什么叫一层交换机,二层交换机,三层交换机?
- 关于图计算图学习的基础知识概览:前置知识点学习(PGL)[系列一]
- 给你一个长度为 n 的整数数组 nums 和 一个目标值 target。请你从 nums 中选出三个整数,使它们的和与 target 最接近。 /返回这三个数的和。
- mc服务器常用指令_MC玩家必看常用指令大全
- 第三章 标准单元库(下)
- java毕业生设计选课系统计算机源码+系统+mysql+调试部署+lw
- 海康 综合安防管理平台 对接