(a). Knights always tell the truth, so they cannot say "I'm a knave". Knaves always lie. If knave say "I'm a knave" it will be truth, so knaves have say only "I'm a knight". Since all 3 persons cannot be neither knights, nor knaves, they are spies.
(b). “I am the knight” can belong to knight (truth), knave(lie), or spy (lie). “A is not the knave” can belong to knight if A is knight or spy, or it can belong to knave (with any A), or spy (with any A). In this case there is no unique solution. Possible solutions for A,B,C are: {(knight, knight, knight), (knight, knight, spy), (knight, spy, knight), (knight, spy, spy), (knave, spy, knight), (knave, spy, spy), (knave, knave, knave)}.
(c). If knave says "I'm a spy", then he says truth, so knaves cannot say this. “A is the spy” can be said by knight, by spy (if A is a knight or a spy) or by knave (if A is a knight). All possible solutions for A, B, C are: {(knight, knight, spy), (knight, spy, spy), (spy, knight, knight), (spy, spy,spy), (spy, spy, knight), (knight, knight, knave), (knight, spy, knave)}.