The verb usually means assign/set/define, and you use it in expressions like задавать диапазон значений "to assign a range of values" or задавать функцию преобразования "to assign a transform function". Even in задавать упражнение "t oassign an excercise" (as a howemork etc.).
It is ALSO used in a set expression "задавать вопрос", which means "to ask a question". This verbs doesn't mean "to ask" in any other situation. However, "задавать вопрос" is frequently used in Russian, so you cannot just discard this use.
No, you cannot say "спрашивать вопрос" or "спросить вопрос". It's either "спрашивать/спросить" or "задавать вопрос".