My other suggestions would be to keep as little clutter out of your main file as much as possible. It's perfectly ok to move your functions into a separate header file. This example I am going to show you would be something that would probably get you screamed at in the professional enviorment... but for something this small... it'd be overkill to do it the proper way.
Please PLEASE don't put code in a header file. This defeats the whole purpose of a header file. Header files are great for prototyping functions/classes that need to be called from other source files. They are not a place to put code it just so you can "clean up" your main source file.
If you're concerned about cluttering up your main source file, then make multiple source files and include the function prototypes in a header file.
You even said, "This example I am going to show you would be something that would probably get you screamed at in the professional enviorment" so why would you offer this as advice to a beginner who's trying to learn the right way to do things?
And, FWIW, there's nothing wrong with prototyping a function in the same file it is defined, assuming it's only used in that file (and then, it should probably be declared static). I'm not sure why you are so against that.