In C, arrays have a fixed size declared at creation. For example, int arr[3] creates an array with indices 0, 1, and 2. Accessing arr[1] is valid and returns the stored value. However, accessing arr[3] is invalid because it is outside the declared size. This causes undefined behavior, which can lead to errors or crashes. The execution table shows each step: declaring the array, accessing a valid index, and then an invalid index. Variables track the array contents and accessed values. Beginners often confuse the size with the maximum index; remember size 3 means indices 0 to 2 only. Always ensure your index is less than the array size before accessing elements.