两句都是正确的表达。一句多用于英国英语,一句多用于美国英语。
一般说来,当have表示状态(如表示拥有,患病等)时,在否定句或疑问句中,它可以不用助动词do(在非正式文体中可在have 之后加 got)(主要是英国用法),也可用助动词do(主要是美国用法):
He hasn’t (got) a car. / He doesn’t have a car. 他没有小汽车。
顺便说一句,即使在英国英语中,若指经常性的现象,也通常用助动词do来构成疑问式和否定式,且不与got搭配;若指暂时现象,则不用助动词do来构成疑问式和否定式,且可以与 got 连用(注:在美国英语中则无此区别,一般都用do构成疑问式和否定式):
Have you (got) a cold now? 你感冒了吗?
Do you often have colds? 你感冒了吗?