what is recursion in c
what is recursion in c
· Recursion means function can call itself.
· Example:
main()
{ Printf (“This is a computer”);
Main ();
}
When executed this program, it will produce an output something like this,
Output:
This is a computer
This is a computer
This is -------------
Execution is terminated abruptly otherwise the execution will continue indefinitely.
Another useful example of recursion is the evaluation of factorial of a given number.
Factorial 4! = 4*3*2*1=24
Example:
#include<stdio.h>
#include<conio.h>
factorial(int n);
void main()
{
int a,c;
clrscr();
printf("enter the fact no");
scanf("%d",&a);
c=factorial(a);
printf("%d",c);
getch();
}
factorial(int n)
{
int fact;
if(n==1)
return(1);
else
fact=n*factorial(n-1);
return(fact);
}
Explain nested function.
A nested
function is a function
defined inside another function.
Example
#include<stdio.h>
#include<conio.h>
float ratio(int x,int y,int z);
int difference(int x, int y);
void main()
{
int a,b,c;
clrscr();
printf("\n\n enter the value of a,b,c");
scanf("%d %d %d",&a,&b,&c);
printf("%f \n",ratio(a,b,c));
getch();
}
float ratio(int x,int y,int z)
{
if(difference(y,z))
return(x/(y-z));
else
return(0,0);
}
int difference(int p,int q)
{
if(p!=q)
return(1);
else
return(0);
}