Tracing through a recursion program.

Hello. I'm currently revising for an exam in structures and algorithims, but recently ran across a problem in my studies. I have already tried lookung through notes, online and Daniel Liangs java book, but can't find exactly what I need. The code is as follows:

Now I've entered the code on my own pc, and I know the output is seven *, but I need to know how, and why. I already guessed that the quiz value of five is passed to i when i is created. But why are there two duplicate lines of code where quiz is equal to i divided by two, and if i is five how does it possibly go around 7 times when divided by two every time, or does the presence of the two duplicate lines mean it prints twice?

Sorry for rambling, but this has been bugging me for ages. Any help would be greatly appreciated.

Now Quiz(2) of 3rd step again satisfy the condition 2>1 so it again calls Quiz 2 times.
Step 4) quiz(1)
This time it doesn't call quiz further because "1>1" condition gets wrong. But still it prints "*" bacause print statement outside if condition.
Step 5) quiz(1)

Similarliy step 3) also calls quiz 2 times

6) quiz(1)
7) quiz(1)

Every call to quiz results in printing of "*" so it gets printed 7 times since you callled quiz 7 times.

I have a 2d matrix with dimension (3, n) called A, I want to calculate the normalization and cross product of two arrays (b,z) (see the code please) for each column (for the first column, then the second one and so on).
the function that I created to find the ...

Write a C program that should create a 10 element array of random integers (0 to 9). The program should total all of the numbers in the odd positions of the array and compare them with the total of the numbers in the even positions of the array and indicate ...