Well for adding menus and the like to say a text-mode program, try ncurses
http://web.cs.mun.ca/~rod/ncurses/ncurses.html
http://www.tldp.org/HOWTO/NCURSES-Programming-HOWTO/