recursion the current sequential flow of execution is interrupted and control is transferred to the printrev(function with value of being assigned to argument the body of printrev(begins execution at the first statement since is greater than the body of the if statement is executed when the flow of execution reaches the printrev( function callthe sequential flow is once again interrupted as control is transferred to another instance of the printrev(function the body of this instance begins execution at the first statementbut this time with figure (aillustrates the execution of the recursive function as group of boxes with each box representing single invocation of the printrev(function the boxes contain the contents of local variables and only the statements of the function actually executed each recursive call to printrev(is shown inside its own box with the boxes positioned at the point where the function was invoked printrev )nprintinc ) if printincn if printn printrevn printrev )printinc )nif printn printrevn if printincn printinc ) if printincn printrev ) if printn printrevn printinc ) if printincn printinc )nif printrev ) if printn printrevn printrev )nif printn printn printn printn ( (bfigure recursive flow of execution(aprintrev(and (bprintinc(these recursive calls continue until value of zero is passed to the functionat which time the body of the if statement is skipped and execution reaches the end of the function as with any function callwhen execution reaches the end of the function or the return statement is encounteredexecution returns to the location where the function was originally called in this casethe call to printrev(