As mentioned above, no, Canon lenses only work on Canon bodies, and Nikon lenses only work on Nikon bodies. But there are third party manufacturers such as Sigma and Tamron that make lenses designed to fit those two brands. you just have to make sure you purchase the one designated for whichever you choose to go with.
Yea. You cannot put Canon EF lenses on anything that isn't an EOS camera because the mount is too large for other camera bodies. You can put Nikon F mounts on a Canon via adapter, but only if it doesn't have autofocus...so basically no. But I know Tamron, Sigma, and Tokina all make lenses in Canon and Nikon mounts.