Most students use a GUI tool, such as Code::Blocks (which is nicely free). It does what any GUI does: Give you a familiar environment that makes it harder to understand how anything actually works. You're better off without it.
For this class, you must at least learn to run the executable program from a command line. This is essential to use I/O redirection, which will be needed for several of our assignments.
The usual ending for a C++ code file is .cpp. An older convention is to use .cc, and I still have a lot of those around that I haven't gone back and changed. The two are equivalent. Plain C is .c. When we start talking about header files, the ending is .h in both languages.