In Oppenheim & Schafer's "Discrete Time Signals Processing" it's written that:
... it is important to recognize that x[n] is defined only for integer values of n. It is not correct to think of x[n] as being zero when n is not an integer; x[n] is simply undefined for non integer values of n.
It is by deliberate choice. So the answer to your question is "because the person who defined x(n) wanted x(n) to be defined only when n is an integer (and undefined for all other mathematical entities which n could possibly refer to)".
If you instead would like to know why this choice was made, the answer is: because x(n) is a sequence in the sense of x(0) is the first value x(1) the second, and so on. This well fits the data an (iterative) algorithm operates on/generates. So it is because a sequence is an adequate data model in the context of digital signal processing.