C..
Typically if you have a child that is aggressive PUNISHMENT is not the answer. Yes, it sounds counter-intuitive..... but studies have proven that discipline (which is consistently showing him what you WANT him to do) is much more effective than punishment (applying a negative non-natural consequence).
So when he gets angry, have you tried saying "gosh it looks like you are angry" (yes, this SEEMS ridiculous when he is OBVIOUSLY angry... but it lets him know you UNDERSTAND and validate his emotion) "Here is what you can do to get control of yourself" and then give him something to DO to process his anger....... do 25 jumping jacks / punch pillows / write down his feelings..... whatever works for him.
You want to do 2 things with a child who is angry:
1. help them process the physical energy that comes with the emotion of anger.
2. help them process the feelings.... why are they feeling angry and what part of the situation can they control.
Anger is a primary emotion..... and it's typically a response to fear. So, when someone is ANGRY it's because they are feeling something that they can't process. Is he feeling helpless? Is he feeling worthless? Is he feeling threatened? And why?
Don't give him the idea that what he is FEELING is wrong. Help him learn how to BEHAVE when he feels that way.