"I have an exam" and "I've got an exam" are both good. (In spoken English, at least in my experience, nobody ever says "I have got" -- it's always shortened to "I've got," or "you've got," "he's got," etc.).
"I got" is common in some dialects, but it is not standard English, and is not grammatically correct.