I understand the purpose of up/downvoting answers -- some answers are better than others, some answers may be wrong, .etc. With regard to questions, though, there are other mechanisms to deal with "bad" questions: comments, close, flag. A poorly written question should be improved. A bad question should be closed/deleted.

Often, though I see poorly written questions downvoted. I'm not sure what this accomplishes. I get loss of rep for offensive or spam questions, but for an off-topic question? or one that is just poorly written? Why?

It seems to me that rep ought to be based more on answers on a site of this type. Fundamentally, it seems that rep ought to be based on what you add to the site, not what you ask of it. A particularly good question does add to the site, but a poor question doesn't really detract from it in the same way that a bad (wrong) answer does. Sure, go ahead and give people more rep for asking a particularly good question, but why punish people for asking bad questions when there are other ways of handling that.

Why not handle questions more like comments and allow upvotes, but not downvotes? It seems to me that many, if not most, of the downvoted questions are first timers. It's more likely that your first introduction to the site will be in asking a question, rather than answering. There is a significant risk to alienating new users when their questions are downvoted -- there's a visceral response to seeing that negative number next to your question. Why not let the close/flag system weed out questions that don't belong and the comment system work to improve poorly worded questions.