I am using Stephen Prata's C Primer Plus (5th Edition) to teach myself C Programming. I am not a student (I wish), and am seeing myself stuck!

(bear with me, this is my first post so I hope I get the formatting right)

I have this code:

I am learning Recursion and the books suggest transforming the above using a recursive approach; I just cant get my head around it. any suggestions would be highly appreciated.Code:#include <stdio.h> double power(double a, int b); /* ANSI prototype */ int main(void) { double x, xpow; int n; printf("Enter a number and the integer power"); printf(" to which\nthe number will be raised. Enter q"); printf(" to quit.\n"); while (scanf("%lf%d", &x, &n) == 2) { xpow = power(x,n); /* function call */ printf("%.3g to the power %d is %.5g\n", x, n, xpow); printf("Enter next pair of numbers or q to quit.\n"); } printf("Hope you enjoyed this power trip -- bye!\n"); return 0; } // test runs: // 1 & 1 == 1 // 5 & 5 == 3125 // 6 & 7 == 2.7994e+005 double power(double a, int b) { double pow = 1.0; int i; if ((b == 0) && (a == 0)) pow = 1.0; else if (a == 0) pow = 0.0; else if (b > 0) for(i = 1; i <= b; i++) pow *= a; else /* b < 0 */ pow = 1.0 / power(a, - b); return pow; }