Why is Tor alone not enough to guarantee anonymity for Bitcoin?
Why do we need the constructions like Zerocoin?
Bitcoin was designed to be decentralized, but was not designed to be anonymous. How you use (earn or spend) Bitcoin cannot (in general) be made anonymous because the protocol was not designed to support that. In fact, the design of Bitcoin, being decentralized, requires all participants to be able to confirm all transactions.
You can use Tor to add to the level of anonymity of Bitcoin by creating a more anonymous "owner" of a Bitcoin wallet. The transaction can still be traced back to this wallet, but it may be more difficult to tie the wallet to a specific entity. This is hindered, however, because the wallet is only useful if it can, at some point, be converted to/from real currency--a process that is frequently traceable through traditional banking means.
Another technique to make tracking Bitcoin transactions more complicated are basically a form of digital money laundering...services that take in Bitcoin from one user and give it out to a different [set of] user(s), and visa-versa.