If you're new to Linux, or don't feel like spending hours learning how to use the text editor, don't go with vi/vim or emacs. These editors are very powerful, but take a long time to learn.

If you want to use a console based one, go with nano or pico.

For a GUI app, I use kate.

If you're just starting out in C, I'd recommend using an IDE so that you don't have to worry about makefiles or using the command line compiler. Code::Blocks is a good one, KDevelop is pretty good but can be a pain sometimes. Netbeans is another good one.