Its to provide localised results. Google will generally favour websites from the country in question, i.e. in the UK, Google.co.uk will, all other things being equal, more often then not place .co.uk domains above websites from other countries.
personally, I have noticed that Alexa country ratings/rank relates to Google country extension popularity. For example, our blog has high Alexa rank for India, and so does Google.in for certain keywords...
Search results differ not only between google.com and other extensions, but also if you try the same extension in different countries, and even different cities in the same country. For example, the following might give you different results if you're searching from Los Angeles or from Miami: http://www.google.com/search?hl=en&q=search+engine+results&btnG=Google+Search&aq=f&oq= If you are located outside the USA, you can append &gl=US (Geographical Location = USA) if you want to know the results for people searching from within the USA. I do that all the time because my blogs target the US market, and I want to know my positions in the serps. This is because Google doesn't have one centralized server, but many data centers around the world. You also might want to try the Firefox extension Google Global. It gives you the option of seeing the serps from different countries. It just appends &gl="country code" to the search query.