数据结构宿舍管理系统

信息管理采用信息表的话修改信息比较麻烦,采用哪种数据结构比较好?
宿舍管理业务包括:宿舍信息、学生信息的录入、查询与删除,宿舍分配等。试设计一个宿舍管理系统,将上述业务活动借助于计算机系统完成。
【基本要求】
1)必须存储的信息(用文件存储)
(1)宿舍信息:房号、名称、人数、空缺人数、类别、楼层、管理员等。
(2)学生信息:学号、姓名、性别、专业、年龄等。
(3)宿舍分配信息:房号、姓名、人数等。
2)系统应实现功能
(1)宿舍信息管理(录入、修改、删除、查询);
(2)学生信息管理(录入、修改、删除、查询);
(3)宿舍分配:根据学生的要求(如性别、专业等)查询满足条件的宿舍,进行分配,修改空缺人数;
(4)宿舍调换:为某些因特殊情况而需要更换宿舍的学生更换宿舍;
(5)数据文件按关键字(姓名、学号、房号)进行排序。

在磁盘上存储,使用线性表。在内存中使用链表。