I translated as "Er ist zufrieden, denn die Studenten können alles beantworten." My understanding is if the archaic English use of "for" appears to make logical sense, denn is appropriate. Is this not true?
Weil and denn are totally equivalent here, just the word order changes, as in your sentence. I'm not fit in ancient English, but also this seems to make sense to my ears....
Added this. Sorry it was missing!
What's the issue with "antworten (auf)" instead of "beantworten"?