How can protect all privacy from someone that needs to use my Mac? A friend of mine is going to stay here for two days, and I am sure he will need to ask me to use the Mac (and PC) in the study room.  (which will be tons of work to move them and no matter where they are moved, the friend for sure will ask for use of a computer).

In such case, what is the best way to protect my privacy, so that he won't be able to look at my Documents folder, Photos folder, etc, and all of my Firefox, Chrome, Safari's History, Bookmarks, and Stored Passwords?

I can create a temporary account, I think, and log in using that tmp account, but will that protect looking at my default user folders on hard disk, and also, the Safari / Firefox / Chrome etc were installed so that they can be used by all users, so do I also need to remove all those History, Bookmarks, Stored Passwords, on each browser?  (and it is not good to remove the bookmarks and stored passwords because I may need them later).

Is there a better way?
Just make sure your admin account has a good password that isn't written down anywhere (or add some numbers you will remember to your usual password.)

From there, you can make a guest account for them - as long as it isn't an admin user - they can't grant themselves access to your files.

If anything is truly sensitive - don't let them near the mac. It's easy to boot any mac from an install disk and access your files since my operating system won't care what your password was. Your guests would only need time, a little knowledge and curiosity (or worse) to have access to anything that isn't otherwise encrypted on your Mac. You can (should?) make encrypted disk images to store any sensitive information that you wish to protect from someone that would access your mac against your wishes.

See this article for an explanation. Even if you store your password in your keychain (less secure) - a technician can't see the contents of the folder unless they crack your password (or your keychain/log in password). It will just be scrambled bits.