As far as practical uses go, they are for designing filters. Understanding how they work is not as simple and will likely require some further reading, but I'll try to give a bare-bones explanation here.
[cpole~] and [czero~] are first-order filters that take complex numbers as their coefficient. Their purpose in Pd, along with [rzero~] and [rpole~], is for custom filter design, in which higher order filters would be represented as a series of first-order filters.
In the case of audio signals, we're typically only interested in working with real signals, and as such filters are designed with real coefficients. However, when breaking a second-or-more-order filter with real coefficients into multiple first-order filters, the coefficients of those first-order filters may (and very often do) have real and imaginary parts. They typically (always?) end up being conjugate pairs (i.e. same real part, opposite sign for imaginary part).
As an example, if you have second-order all-zero filter filter, it's transfer function will look like this:
H(z) = b_0 + b_1 * z^-1 + b_2 * z^-2
where b_0, b_1, and b_2 are the coefficients and z^-d represents a delay of d samples. That is a second-order polynomial, and to break it up into two first-order polynomials (factoring), you need to find the roots. In the case of the second-order polynomial, you can do that with the trusty quadratic formula.
http://en.wikipedia.org/wiki/Quadratic_equation#Quadratic_formula
That will leave you with something like:
H(z) = g * (1 + q_1 * z^-1) (1 + q_2 * z^-1)
where g is the gain coefficient (same as b_0 here), and q_1 and q_2 are the solutions to the quadratic formula and the coefficients for two first-order filters.
Anyway, yeah, that's pretty minimal and probably doesn't shed that much light. ;-p Understanding filters took quite a bit of studying for me. I recommend checking out this online book to help get a more solid grasp (read the pdf links; some of the html ones aren't finished):
http://www.dspguide.com/pdfbook.htm