The following program fragment is written in a programming language that…

GATE · 2003 · CS

The following program fragment is written in a programming language that allows global variables and does not allow nested declarations of functions.

global int i = 100, j = 5;
void P(x) {
    int i = 10;
    print(x + 10);
    i = 200;
    j = 20;
    print(x);
}
main() {
    P(i + j);
}

If the programming language uses static scoping and call by need parameter passing mechanism, the values printed by the above program are

  1. A.

    115, 220

  2. B.

    25, 220

  3. C.

    25, 15

  4. D.

    115, 105

Attempted by 4 students.

Show answer

Correct answer: D

The worked solution is available to enrolled students.

Explore the full course: Iocl Engineers Officers Grade A Paper 2

Loading lesson…