Потому что в языке Си вы сами должны контролировать работу с памятью и следить, чтобы не происходило записи за пределы массива, переполнения стека и т.д.
В данном случае из-за такой записи за границы допустимого возможны любые глюки вплоть до падения программы.