Your "node" class should know what are the methods provided in "citizen" to allow you to call any of its methods. So mere forward declaration wont work. You have to include "citizen.h" in "node.h" file.
BTW, the design which you have is a bad one. You are storing a pointer to a child object in Parent class. Why is that?
File node.cpp shall include header citizen.h that to know the definition of the class. Otherwise it does not know what is displayC() and how it is defined.