次の関数を再帰関数にしたものを
教えてください。

void add_node(node *p,node *cp)
{
while(p->nextp != NULL)
p = p->nextp;
cp->nextp = p->nextp;
p->nextp = cp;
}