(a) class Derived : public Derived { ... };
Incorrect, it is impossible to derive a class from itself.
(b) class Derived : private Base { ... };
This is not only a declaration, but also a definition.
(c) class Derived : public Base;
Incorrect. The declaration of a derived class contains the class name but does not include its derivation list.