En la web encontre lo siguiente, pero me gustaria saber si es del todo cierto:
La explicación más común es que es más eficiente para la computadora almacenar datos en una matriz comenzando en 0. Esto se debe a que cuando la computadora observa una matriz lee la dirección de memoria del primer elemento y luego calcula el resto de las direcciones sumando el tamaño de cada elemento a la dirección del elemento anterior. Por lo tanto, si el primer elemento está en la dirección 100 y cada elemento tiene 4 bytes, el segundo elemento estará en la dirección 104, el tercero en la 108, y así sucesivamente.
Si el ordenador almacenara datos en una matriz que comenzara en 1, tendría que leer la dirección de memoria del primer elemento, sumarle 1 y luego calcular el resto de las direcciones. Por lo tanto, si el primer elemento está en la dirección 100 y cada elemento tiene 4 bytes, el segundo elemento estaría en la dirección 105, el tercero en la 109, y así sucesivamente. Esto puede no parecer gran cosa, pero puede ser bastante más lento para el ordenador calcular las direcciones de esta manera.