Here's another tracing example to give you some practice.
The Program
#include
int F (int a);
int G (int b);
main()
{
int a, b, c;
a = b = c = 0;
a = F(b);
c = G(a);
printf("main: a = %d, b = %d, c= %d\n",
a, b , c);
}
int F (int a)
{
int b, c;
b = 2 * a + 5;
c = G(b);
printf("F: a = %d, b = %d, c = %d\n",
a, b, c);
return (c);
}
int G (int b)
{
int a, c;
c = b + 7;
a = c - 2;
printf("G: a = %d, b = %d, c = %d\n",
a, b, c);
return (a);
}
The Sample Run
G: a = 10, b = 5, c = 12
F: a = 0, b = 5, c = 10
G: a = 15, b = 10, c = 17
main: a = 10, b = 0, c= 15