Question
Can Someone Provide the Dynamic Scoping outputs for this program, just trying to cross check my answer #include #include #include int a, b, c, x,
Can Someone Provide the Dynamic Scoping outputs for this program, just trying to cross check my answer
#include
#include
#include
int a, b, c, x, y, z;
void print(int p){
if (p == 0)
printf("f: %d %d %d %d %d ", a, b, x, y, z);
else if (p == 1)
printf("g: %d %d %d %d %d ", a, b, x, y, z);
else if (p == 2)
printf("main: %d %d %d %d %d ", a, b, x, y, z);
}
int f(int x, int y)
{
int a = 10;
b = 100; c = 1000;
x = g(10);
{
int y;
y = g(x);
{ int x;
x = a+b;
b = g(a);
}
print(0);
}
z = g(0);
print(0);
return x * a - y * b + z * c;
}
int g(int a)
{
print(1);
a = 2*a; b = 2*b; y = 2*y;
return (x + y - z) * a;
}
int main()
{
int c = 1;
a = 10;
x = 100;
y = 1000;
z = f(x, y);
z = g(a);
print(2);
return 0;
}
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started