Why does ice float on water

Water molecules are formed when two atoms of hydrogen bond covalently with an atom of oxygen. Hence their molecular formula is H2O. Water is a polar molecule. The density of water is 1 gram/cubic cm. The density of ice is 0.931 gm/cubic cm. This difference in the densities of both is due to the fact that, the structure of bonding between hydrogen and oxygen is different.

water molecule
Water Molecule
ice molecule
Ice Molecule

The figure shows the molecular structure of both water and ice. It can be clearly seen that the ice molecule is more loosely packed than that of water molecule. So, the water molecule has a high density. This causes ice to float on water.