java设计一个按班级的分组排序,班级 姓名 学号 成绩 ,再输出每个班90分以上的人数,占比多少。
2018-11-15 · 知道合伙人互联网行家
一、先编排考场
1.首先要做的就是先安排各个班级的每个学生所在的考场,尽量让同一考场不能有同班同学。或者是,同一考场出现部分或极少的同班同学。
2.比如,一个年级有20个班级,每个班级有50个学生,那么,学生总人数就是1000个人;如果一个考场安排30个学生,那么,每个考场就有30个座位,那么,总的考场数量是31个。
3.现在先安排考场。
4.如下图,增加一“考场”的列,然后,使用填充功能,从上往下填充1到31,1到31代表的就是考场号;
5.注意,从1填充到31,然后,接着又从1填充到31,直到把整个年级的学生都填充完为止。
6.通过填充,就得到如下图的数据了。
7.现在看下图,每个班级每个学生都安排好考城了,分别在不同的考场,即便是有同班的同学在同一考场,也是少数人,稍后通过下面的方法,就能解决相邻的问题。
二、同一考场的同班同学不能在相邻位置
1.通过如上的操作,整个年级的每个学生都安排好了考场了,现在,要做的就是同一考场内的同一班级的学生不能在相邻的位置。
A、先通过排序的办法,对考场号进行排序
这样就能将同一考场的学生排序到一块。
B、同一考场安排座位
同一考场内,多数同学是不同班级的,但是有一小部分同学是同班级的,因此,得保证同一班级的同学不能在相邻的位置。
2.针对同一考场的学生数据进行排序,其它考场不管。或者将每个考场的学生数据单独保存成为一个Excel文件。
排序的时候,按照学生姓名进行排序,这样基本就能解决相邻的问题了,排序好了以后,再通过填充的办法,给同一考场的学生填充上1到30的座位号。
如此,整个编排考场,同班不能相邻的问题就能圆满的解决了。