In Unix you don't need anything, solaris cc/GNU gcc are good compiler, what you need is a editor, such as VIM (get free from www.vim.org)
In DOS/Windows you need to install a compiler, any compiler will do, 16bit Turbo C/Quick C or 32bit LCC/Dev C++/Cygwin/Watcom C++/MingW/M$ C++/Borland C++(Builder), all of them are more than enough for a beginner.
If you do not know where to get one, try:
LCC: http://www.cs.virginia.edu/~lcc-win32
Pros: Compartively effective, support Windows API programming
Cons: No C++ support
DevC++: http://www.bloodshed.net/download.html
Pros: gcc compatability, support Windows API programming also
Cons: (Don't know)