Make sure that your result type for week ending is date and not some other value as this will make for better sorting.
You can set up a summary report with a sub summary part sorted by Student ID. define summary field that computes the total of Hours and put it in this sub summary part. Sort your records first by weekending, then by student ID to group your records first by week, then by student.
If you remove the body layout part, you can get a list of one such sub total per student per week.
There are also other ways to compute this total from the context of a related table where you have one record for each student. This can sometimes be a better way if you need to list students that worked 0 hours.