more c recursion