I recommend the ARRL's General Class license study manual-- you can get them from many ham stores online, or from the ARRL's website at: http://www.arrl.org/catalog/lm/
. You can also obtain the ARRL's "Your Introduction to Morse Code" CDs from the same website. These two CDs will give you everything you need to prepare for your code exam.
If you want more practice in code before you take your code test (not a bad idea) then try downloading the FREE G4FON's code trainer software here: http://www.qsl.net/g4fon/CW%20Trainer.htm
. This is excellent software-- you can customize it for speed, tone, pitch, and you can even have the software toss in some static and interference in the background to simulate real on-the-air conversations. The software will send random characters, which is better than listening to the same old tapes or CDs over and over again (you want to learn the code not by memorization, but by the sound of each character).
One last piece of advice-- don't worry if you don't pick up the code real quickly-- on the other hand, you may well learn in a matter of days and/or weeks. Everyone learns the code at their own pace. Just keep practicing at least 1/2 hour per day, more if possible, and you should have no problems with the exam. Five WPM is really pretty slow and once you get on the air and start using code, your speed will go up quickly.