i'm guessing the problem is that the function even() is called before it is defined.
Code:int odd(int); int even(int); int odd(int n) { if ( n == 1 ) /* if n is 1 then it is certainly true that it is odd */ return ( 1 ); else return ( even( n - 1 )); /* n is odd if and only n-1 is even */ } int even(int n) { if ( n == 0 ) /* if n is 0 then it is certainly true that it is even */ return ( 1 ); else return ( odd( n - 1) ); /* n is even if and only n-1 is odd */ }