2 times 'no' :D It can't be used for someone who 'does poorly' in his studies, however in a proper context it doesn't have to be 'financially poor', it could potentially be like "Oh, poor you!". This however will often use a noun, like "biedak" (Ooo, biedaku...) or even "biedaczysko" :D
It's for 99% the 'doing poorly' interpretation - if he was literally weak, then what does that even have to do with the fact he's a student, why mention it? Then he's a "weak boy" or a "weak man" (or most probably simply "He is weak"), but "literally weak student" would be a strange thing to say in Polish.
But well, I say '99%', because technically you could try to interpret it literally. Very strange, but of course not impossible.
You also have "kiepski uczeń". "kiepski" is like "bad-ish", but it's actually used a lot more often than "zły" itself.
I am very sorry to say that, but this issue has been reported to Duolingo for years, and the only answer I remember ever receiving was, that "the longer sentences are too long to leave space for both free tiles and the correctly arranged, therefore some parts of sentences are pre-arranged in order to save space, and we (Duolingo) do not want to force users to scroll the page". The protests of the Contributors, that this makes some sentences unusable for challenges, are apparently not heard. So that seems to be a strategic decision, not the programmers' choice.
The only thing that we can do, is to multiply the protests - and in the meantime, I recommend using the web version instead of the mobile one, as the in the web version that problem does not occur.