Home » Programming & Data Structure » Programming and data structure miscellaneous » Question

Programming and data structure miscellaneous

Programming & Data Structure

  1. What is the return value of f(p,p), if the value of p is initialized to 5 before the call? Note that the first parameter is passed by reference, whereas the second parameter is passed by value.
    int f (int &x, int c) {
        c = c – 1;
        if (c==0) return 1;
        x = x + 1;
        return f(x,c) * x;
    }
    1. 3024
    2. 6561
    3. 55440
    4. 161051
Correct Option: B

Return value f (p, p) if the value of p is intialized to 5 before the call.
Since, reference of p is passed as 'x'
Thus, any change in value of x in f would be reflected globally. The recursion can be broken down as



Your comments will be displayed only after manual approval.