Fortunatly most dogs grow out of it but there are several reasons why they do it,
1. It can be dietry, I would take him off the iams as it really is not a very good food. Look here for better ones,
http://www.dogfoodanalysis.com/. You may want to try a grain free one such as orijen because as dogs do not fully digest grains they make the poop smell like food. Dogs don't need grains anyway, they are just a filler.
2. It could also be behaivoural, have you ever told him off or scolded him for pooping where he shoulden't? Sometimes they eat it in an attempt to hide the evidence of them going.
3. Sometimes they just do it because they like the taste, try feeding him pineapple as this may deter him by making the poop taste bad.