"I have two questions for the captain."
Translation:Ik heb twee vraagjes voor de kapitein.
Yes. One could even argue that it would be more correct. "Vragen aan de kapitein" literally translates as "questions to the captain".
i did the same mistake, to me 'Ik heb twee vraagjes voor de kapitein' sound natural
Yes, I wholeheartedly agree...this one sounds a bit weird to me. I would alway say 'ik heb ...vraagje voor....' and if I heard someone say the above sentence I would think they were not native speakers. In this case it translates almost exactly the same as the English, where you say 'I have questions for you (voor U)' and not 'I have questions to/on you'. My only guess is that this comes somehow from aanvragen, which is a verb meaning request or apply (as in apply for a passport) but then it would be 'ik vraag de kapitein aan' so that doesn't really work, so more likely it is something along the lines of 'to pose a question'. I'm Belgian and haven't live there for more than twenty years, so I can't be sure but I just find this rather oddly worded, and so, it seems, do my fellow native speakers above.