ENTORNOS

Un entorno de desarrollo integrado o IDE, es una parte fundamental para un programador, ya que este ayuda a el desarrollo de aplicaciones, conteniendo desde lo más básico como un editor y compilador, hasta herramientas extras como lo son autocompletar el código.
Aquí se listan algunos 100% gratuitos.

WINDOWS:
DevC++, un IDE gratuito, en español, muy simple y además es uno de los más usados. (recomendado)

VisualC++, el IDE de Microsoft en su versión gratuita (en inglés).

CodeBlocks, un IDE 100% libre y multiplataforma (en inglés).

Geany, un pequeño IDE multilenguaje y multiplataforma.

LINUX:
Geany, un pequeño IDE multilenguaje y multiplataforma. (recomendado)

CodeBlocks, un IDE 100% libre y multiplataforma (en inglés).

Eclipse, un IDE para grandes desarrolladores.

Netbeans, un IDE un poco avanzado.