1) Not out of the box
2) There is a feature called "assessment". You could for example give the value "1" for all answer options that are correct, and "0" for all those that are not correct
3) In the upcoming version 1.91 (not yet stable), there is an option to randomize questions.
The main problem that I see is to randomly pick 10 questions from 100. This is not an feature that Limesurvey offers out of the box.
There might be a chance to create something with Javascript, that picks 10 numbers from 1-100 and writes them into hidden questions. With conditions you could hide the other 90 questions and show only those where the number was chosen. But I guess this is not trivial.
However, this is less a questionnaire but more a quiz or test environment. Limesurvey was not built for this. You might be able to tweak it for a quiz or for a test, though.