Drupal 7: how to build a form system
I can't give the complete solution, Yet I will try to relate things what you have asked to things what we have in Drupal,


Form type 1 =>  Any Node type (say Article)
Form type 2 =>  Any Node type (say blog)
Student => Drupal User (has a profile of student, use profiles2 module )
Teacher => Drupal User (has a profile of Teacher, use profiles2 module )


User Permissions for Node creation, Node edit by its own author. Views to display the forms and user redirection module to get something you want.