Рубрики

ВОРОТА | GATE-CS-2003 | Вопрос 74

Следующий фрагмент программы написан на языке программирования, который допускает переменные и не допускает вложенных объявлений функций.

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);

}

Если в языке программирования используется динамическое определение объема и механизм передачи параметров по имени, значения, напечатанные вышеуказанной программой:
(А) 115, 220
(Б) 25, 220
(С) 25, 15
(D) 115, 105

Ответ: (А)
Объяснение:

global int i = 100, j = 5;

void P(x) // x = i + j

{

    int i = 10;

    print(x + 10);// print (100 + 5 + 10) = 115

    i = 200;

    j = 20;

    print(x); // print (200 + 20) = 220.

    // i и j будут изменены, поскольку они являются глобальными переменными

}
main()
{

    P(i + j);

}

Таким образом, А является правильным вариантом, так как печатаются 115 и 220.

Пожалуйста, прокомментируйте ниже, если вы найдете что-то не так в вышеуказанном посте.
Тест на этот вопрос

Рекомендуемые посты:

ВОРОТА | GATE-CS-2003 | Вопрос 74

0.00 (0%) 0 votes