A few notes: Yes, you would need the <cctype> header for tolower() . I could add that you'd want to also have the <cstdlib> header for the calls to system() .
Are the system() calls actually needed? If I am not mistaken, Visual Studio 2010 automatically pauses console programs at the end.
As things now are, you are opening the same file for both input and output. This means that you'll be overwriting the cleartext with the ciphertext. Given that you neither read from nor write to the file, this won't matter right now, but surely you intend to use different files for this purpose?
You have the path to the input file hard-coded to a specific location on your drive, which will surely present a problem when you hand the assignment in. A better solution to both this problem and the previous one would be to prompt the user for the names of the files, or else get them at the command line.
You have three function prototypes in your comments, but the neither the prototypes nor the functions themselves are in the code. I assume that this was part of the assignment description, which you might want to re-read.