Why array index starts with zero

formula to get address based on index is
Base address + index X size of cell in array

Array is a continuous space in memory, hence to get the value based on index we need to get the address.

arr[3] = base address + 3 x 1

To use 1 based index, we can use the formula formula

Base address + (index – 1) X size of a cell in array

addition resource – https://www.cs.utexas.edu/users/EWD/transcriptions/EWD08xx/EWD831.html