For makefile projects, the accepted solution fails, due to a bug in Visual Studio (which is present at least up until version 2012 - I haven't yet tested 2013). This bug is detailed here.
In order to have the console pause after program termination on a makefile project, perform these steps (this may differ for versions other than 2010 - 2012):
1) Pass /SUBSYSTEM:CONSOLE
to the linker. - EDIT: see below.
2) Open your project file (.vcxproj) in a text editor.
3) Inside the root <project>
tag, insert the following:
<ItemDefinitionGroup>
<Link>
<SubSystem>Console</SubSystem>
</Link>
</ItemDefinitionGroup>
4) Reload the project in your solution.
5) Run the program without debugging (CTRL + F5).
EDIT:
As per my comment below, setting the linker option /SUBSYSTEM:CONSOLE
is actually irrelevant for makefile projects (and not necessarily even possible, if you are using a compiler other than MSVC). All that matters is that the setting is added to the .vcxproj file, as per step 3 above.