On your first call to Minimum the size==5 and therefore on line 8 you do compare/use element A[5].
Q: Given that the A was declared: int A[]={8,65,5,10,8};, what is wrong?
A: There is no A[5]. It is out of range; one past the array.
A problem in both your and TheSmallGuy's code is that the result must have a sane value before before first call of Minimum().
In your code it specifically must equal A[0], because the recursion never checks that element. In TheSmallGuy's the result has to be initialized with something sufficiently large.