Правильным будет предложение: Why didn`t John prepare for exams?Объясняется это тем, что частица not не может быть отделена от глагола did, ни в отрицательном предложении, ни в вопросе. А так как это вопрос, did с частицей not идут сразу после вопросительного слова.