Problem
1. Write a program that copies a file using the source and destination as arguments. The destination can also be a directory.
2. Modify the (Self-Test) so that the output is displayed in lowercase when invoked by the name lower, and uppercase when invoked as upper. What else do you need to do to run it?
3. Explain why the selection of the buffer size used by read and write is crucial in writing efficient programs.