Nie da się ukryć, oba języki są bardzo podobne. Ale przesiadając się z jednego na drugi okazuje się, że jest wiele drobnych szczegółów, na które trzeba zwracać uwagę (szczególnie C++ -> C).
Ja polecam C++, nic nie zastąpi std::vector'a. Jak siadam do C i mam stworzyć tablicę, to nie wiem co ze sobą zrobić.
A na serio, to jak znasz C++, to poradzisz sobie z C. I odwrotnie. Co najwyżej nie będziesz wiedział o kilku ułatwieniach.
Co do porównania szybkości I/O, ostatnio usłyszałem i potem potwierdziło się w tutaj na Spoju, że cin (z wyłączoną synchronizacją) trochę szybciej wczytuje dane niż scanf. Za to cout jest kosmicznie wolniejszy niż printf. Czyli w zadaniach, gdzie jest dużo do wczytania i mało do pisania, można się pokusić o użycie iostream'a (tak jak w wspomnianym wcześniej zadaniu Przeprowadzka). Możliwe, że stąd wynika taki, a nie inny wynik.