имхо все же делает. понятно что на С можно писать и в функциональном стиле и в ОО, обилие gtkшного софта тому подтверждение. но тут всегда есть разные (и весьма серьезные) допущения, которые не позволяют добиться тех же результатов, что и специализированные языки.например отсутствие поддержки чистых функций на уровне языка. с одной стороны ничего не мешает написать чистую функцию, с другой стороны компилятор об этом ничего не знает и следовательно не может применить оптимизации специфичные для функциональных языков (ленивые вычисления, автоматическое распараллеливание и т.д.).
есть определенный набор фич позволяющий отнести язык к той или иной парадигме. и возможность писать в определенном стиле - это еще не достаточное условие.