Is it possible to simply do this without a real time clock, using delay(1000) for each second?
Yes it is, but I wouldn't recommend it.
Think about it:
This will drift over time, as "updateClock" effectively increases the delay time, because it takes a finite amount of time to execute.
Also, you won't be able to see any button presses that occur during "delay".
Have a look at the "blink without delay" example to see a better way.