-->

what is recursion in c

2 minute read

 what is recursion in c

What is Recursion?

·         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);

            }