I think the reason why you are getting “random” numbers is because you haven’t initialized the carry
variable. In the for
loop, you are adding the un-initialized value of carry
to the array which will cause undefined results.
solved factorial giving wrong answer