C calls out that he is wearing a black hat. Why is he 100% certain of the colour of his hat?
After a while, C comes to the realisation that he must answer.
This is because D can't answer, and neither can A or B.
D can see C and B, but can't determine his own hat colour. B can't see anyone and also can't determine his own hat colour. A is in the same situation as B, where he can't see anyone and can't determine his own hat colour.
Since A, B, and D are silent, that leaves C. C knows he is wearing a black hat because if D saw that both B and C were wearing white hats, then he would have answered. But since D is silent, C knows that he must be wearing a black hat as he can see that B is wearing a white hat.