学生管理系统预习

预习报告——学生管理系统

实验任务

         1.系统可对学生信息浏览、增加、删除和修改;
         2.按学生成绩确定名次及信息输出,双向冒泡排序、希尔排序、快速排序、堆排序。要求可对学生信息查询,根据学号或姓名进行查找;
         
         **冒泡排序**
          比较相邻的元素。如果第一个比第二个大,就交换他们两个。
          对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数
          针对所有的元素重复以上的步骤,除了最后一个。
          持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较
 
          **希尔排序**
          希尔排序是非稳定排序算法,把记录按下标的一定增量分组,对每组使用直接插入                      排序算法排序;随着增量逐渐减少,每组包含的关键词越来越多,当增量减至1时,整个文件恰被分成一组,算法便终止。
          
          **快速排序**
          快速排序使用分治法(Divide and conquer)策略来把一个序列(list)分为两个子序列(sub-lists)。
          快速排序算法的运作如下:
        从数列中挑出一个元素,称为“基准”(pivot),
        重新排序数列,所有比基准值小的元素摆放在基准前面,所有比基准值大的元素摆在基准后面(相同的数可以到任何一边)。在这个分区结束之后,该基准就处于数列的中间位置。这个称为分区(partition)操作
      递归地(recursively)把小于基准值元素的子数列和大于基准值元素的子数列排序。
       递归到最底部时,数列的大小是零或一,也就是已经排序好了。这个算法一定会结束,为在每次的迭代(iteration)中,它至少会把一个元素摆到它最后的位置去。
       使用left与right两个旗标来记录左右两端已排序的元素位置。
       
         **堆排序**
         堆排序(英语:Heapsort)是指利用堆这种数据结构所设计的一种排序算法。堆积是一个近似完全二叉树的结构,并同时满足堆积的性质:即子结点的键值或索引总是小于(或者大于)它的父节点。
          3.信息修改仅可修改四门课成绩;
          4.文件存取学生信息。
          5.学生信息录入,信息包括学号、姓名、专业、四门课成绩、总分、名次

需求分析

      新增学生信息(包括学号、姓名、专业、4门课成绩)
              1. 通过单独建立一个数据库存储学生相关信息
              2.通过学号,姓名,专业等信息对学生进行分类和排序

      浏览学生信息(对学生排序后信息进行浏览)
              1.通过函数调用并打印学生相关信息
              2.查询浏览信息后可以对学生信息进行修改和补充
              增添和删除等操作

主函数设计

        1.查找学生信息(查找符合条件的某条记录)
                 输入学号,通过函数调用数据库中学生的
                 基本信息打印出学生基本信息

        2.删除学生信息(删除指定学生的信息,可给用户选择检索指定
                  
        3.保存学生信息(保存学生成绩档案信息到文本文件)
        4.加载学生信息(登录系统后将磁盘文件中保存的学生成绩信息读取到内存中)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值