The topologies of the clean and hydrogen-terminated C(100) surfaces