Ввод/Вывод текста - это очень нужная и полезная вещь. Однако в реальных проектах у вас будет гораздо больше шансов столкнуться не с cout а с функциями типа printf или syslog. А ввод обычно осуществляется из файла или сокета если данных много или через аргументы командной строки. Интерактивные консольные программы встречаются довольно редко. Что касается программ с GUI - это программы, которые, как правило, имеет отношение к десктопу, ибо на сервере графического окружения обычно вообще нет (если конечно это не Windows-сервер, где с наличием форточек приходится мириться). Если вам хочется писать именно гуевые программы то имеет смысл после прочтения Прата следующей книгой почитать про библиотеку Qt.