Using Scanner input to do some basic math and format an output
Your approach is mostly correct, but it seems to be too specifically written to solve the problem as stated.

For instance, you're making the assumption that any line that doesn't start with a plus or a minus is a line containing student names.

One example case: what if a student gets no pluses or minuses? This wouldn't occur in the case as stated, but you usually don't get this "it's already handled" and it just helps to program in such a way that input which slightly deviates from normal can still be dealt with gracefully.

You're also making the assumption that when you're counting pluses and minuses, everything that is not a plus is a minus.

This works, for now. But if changes in the scoring mechanism are requested, you might want to go with a more flexible approach - one which separates the I/O and the counting, for instance.