Better way to avoid duplicated printing?

Your problem is that the button is a mechanical switch. When you press it, the contacts connect and disconnect many times during what seems to you like one quick press. You need to "debounce" the button. Debouncing is the term used to describe making one button press truly look like just one button press instead of several.

You can do it in hardware by putting a 680pF capacitor between the active side and ground. Or you can do it in software. Look for a library called Bounce:

http://www.arduino.cc/playground/Code/Bounce