It sounds like you have a few user types. Why don't you create a hierarchy of menu classes so at the top is an AbstractMenu and at the bottom are StudentMenu, TeacherMenu etc.? See also the accepted answer for this code reviewthis code review, which suggests to use an interface instead of an abstract class.
Besides that you may consider creating Menu and MenuFactory classes so that you could for example call MenuFactory->getStudentMenu() and obtain a concrete instance of Menu that suits a Student user. Then details of creating user-type-specific menus will be encapsulated in separate methods.
You can even combine these approaches and have static information populated in class constructor and dynamic information added by a factory.