C Programming Questions and Answers

Questions Index

Question: What is recursion? Write down a recursive function in 'C' to calculate the factorial of a given number.

Answer:

In C, if a function calls itself inside its function definition, then it is called a recursive function. While using recursion, programmers need to define an exit condition from the function, otherwise it will go into an infinite loop.

#include <stdio.h>

int factorial(int);

int main()
{
    int number;

    printf("Enter an integer value : ");
    scanf("%d", &number);
    
    printf("The factorial of %d is %d", number, factorial(number));
}

int factorial(int num)
{
    if (num == 0)
        return 1;
    else
        return num * factorial(num - 1);
}