This is true ... there are questions which are driven by curiosity ('how does this work') and there are questions that are more instrumental ('why doesn't this work').
Often the second sort arise because you're missing some deeper understanding of the problem, but even so - one should always try and solve problems oneself (say for 20 minutes), make a list of questions that you run into as you run into them, and then be able to ask them afterwards.
But I also have to say: pair programming is the very best way to ask transmit knowledge and understanding. Your senior pair knows you, sees how you're approaching a problem and will be much more equipped to understand your question as you're both in the same place (literally and metaphorically).
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.