recursive functions call themselves, whereas using iteration you would just loop to perform the same task. You say that you rarely use iteration but this can't be true. Observe the following functions which both calculate a number to the nth power.
1 2 3 4 5 6 7 8 9 10
// iterative
int numToPowerOfN(int num, int power)
{
for (int i=0; i<power; i++)
{
num = num*num;
}
return num;
}
1 2 3 4 5 6 7 8
// recursive
int numToPowerOfN(int num, int power)
{
if ( power == 0 )
return num;
elsereturn numToPowerOfN(num*num, --power);
}