s/([A-Z]+?)[^A-Z]/-C-$1/g;
Ho spostato la parentesi in modo da includere il primo carattere ed ho fatto in modo che la "parola" si chiuda con qualsiasi carattere diverso da maiuscola.
Prova a vedere se ti va bene.
Forse si puo` anche togliere il [^A-Z] e lasciare semplicemente:
s/([A-Z]+?)/-C-$1/g;