A: If call by reference is used, a pointer to i is passed to incr. It will
be incremented two times, so the final result will be two. However, with
copy/restore, i will be passed by value twice, each value initially 0. Both
will be incremented, so both will now be 1. Now both will be copied back,
with the second copy overwriting the first one. The final value will be 1,
not 2.