Не обязательно, но очень полезно. C++ фактически является очень далеко идущим расширением С, и большинство его средств относительно низкого уровня в C++ продублировано средствами более высокого уровня, они существуют в C++ параллельно средствам от С. Так что лучше сначала изучить чистый С, всё равно это начальная часть C++, иначе в голове и программах будет каша.