Reverse engineering is a taboo topic in the Edu community. I highly doubt you would be taking any class on it at a univeristy world wide. And under that thought, this post would violate the sites ToS for content related to Hacking/Cracking.
It ain't as taboo as you think it is. At my Uni we have a course on Security and that course covers things like reverse engineering and cracking. In fact, most of the assignments are to perform some classic exploits. It's really quite important for white hats to know how black hats operate.
As for the original question, I suspect the professor wants everyone to write a simple but nontrivial program and then will distribute the binaries out and challenge the class to find out what each program is trying to accomplish. In that case, I recommend the OP to do something himself (300 lines is really not that big, at least for C). I personally think it's a fun to compete against your classmates (I don't like the cutthroat competition outside of class that some Unis suffer from, but controlled in-class competition is different).