They are all grammatically correct. The ones with do are emphatic and could be used in a context such as the following: – Jack didn’t kill John. – Then who did kill John?
New words, one handy idiom, and a 2-minute quiz — delivered to your inbox to keep your streak alive.