UMBC CMSC 104 CSEE | 104 | current 104

Tracing Example 2



#include <stdio.h>

int Baz (int num1, double num3);
int FooBar (int num1);

int main() 
{
  int num1, num2;
  double num3 = 0.0;
  num1 = num2 = 5;

  num1 = Baz(num2, num3);
  num2 = FooBar(num2);
  printf("main: num1 = %d, num2 = %d, num3 = %.1f\n", num1, num2, num3);

  return 0;
}

int Baz (int num1, double num3) 
{
   int num2, num4;
   
   num2 = 2.0 * num1 + 5;
   num1 = num2 * 6;
   num4 = FooBar(num2);
   printf("Baz: num1 = %d, num2 = %d, num4 = %d\n", num1, num2, num4);

   return (num4);
}

int FooBar (int num1) 
{
   int num2 = 0, num3 = 0;
   
   num3 = num1 + 7;
   num2 = num3 - 2;
   printf("FooBar: num1 = %d, num2 = %d, ", num1, num2); 
   printf("num3 = %d\n", num3);     

   return (num3);
}