Recursion in C

A function calling itself again to compute a value that is called recursive function or recursion. Basically a function is called by the main program but in recursion the same function is called by itself repeatedly.
Example :

int fact(int x)
{
 if(x==0)
 return(1);
else
return(x*fact(x-1));
}