Translation:Do you eat rice?
Actually, it means "Will you eat?" or "Are you eating?" A more precise translation of "Do you eat rice?" would be "你吃米饭吗？" If someone asks "你吃饭吗？" while pointing to a rice cooker or a pot of rice (cooked or uncooked, even though the character for uncooked rice is 米, when this question is asked in this context, "cooked rice" is implied), then I would think they're asking me if I eat rice. "你吃饭了吗?" or "你吃了吗?" would mean DID you eat. Without the 了, the question is in the present/future tense. Also, in the present/future tense, I would not use "你吃吗?" unless I'm pointing to something specific, where the sentence would translate to "Would/Will you eat....?"
I think this is just a problem with "literal" translation, because in this general form "chifan" just means "eat [food]". And for a lot of things in Chinese you use two words. You can't really say "chi" without anything after it, and rice basically is the same as food.
So in real life this sentence means "Do you eat?" and if you want to ask if a person specifically eats rice, you would use two words for rice, so it would be 吃米饭
"你吃饭了吗?" or "你吃了吗?" would mean DID you eat. Without the 了, the question is in the present/future tense (as in "Are you eating?" or "Will you eat?". Also, in the present/future tense, I would not use "你吃吗?" unless I'm pointing to something specific, where the sentence would translate to "Would/Will you eat....?"
Reading the comments, this seems like another error. Please fix! I put, "You eating?" The "are" in this case would be implied and unnecessary due to the "interrogative" character at the end, would it not? In previous examples a character for "are" was included in place of the interrogative character to still result in a question. Also, I intentionally did not include "rice" because the most recent use of that particular character meant "meal" rather than rice. Thanks.