Open circuit on digital input

I want to read a pushbutton (normally open) on a digital input. Do I need a pull-up resistor? What does the Arduino read on a digital input if nothing is connected? (Sorry for the lamer question.)

If nothing is connected, the pin will "float" and will read wrong values.

It must be connected to ground or to +5V with a pullup or pulldown resistor.

Read more about floating pins here

Yes, you need a pullup resistor. A "floating" pin picks up hash and can be high or low.
No need to use a physical resistor. Arduino pins have inbuild pullup resistors that can be enabled in code.

pinMode(pin, INPUT_PULLUP);

Switch goes from pin to ground.
Leo..

Thank you! I have to read some 12 pushbuttons and it is a relief that I don't need 12 pullup resistors.

Well, for 12 pushbuttons, you may wish to consider wiring them as a matrix and reducing it to 7 pins. Still do not need pull-ups.