OK turns out I couldn't properly connect the buttons to the ground. After fixing that and replacing my code with yours I see that number only changes when the button is pressed and then reverts back to its original value when it is unpressed.
Shouldn't it remain changed? What do I have to do for that?
Move int value =0; to somewhere outside the loop function. I'll warn you though, in it's current incarnation, it will increment and decrement so fast that it'll appear to give you random values.