C Programs | IT Developer
IT Developer

C Programs



Share with a Friend

Functions in C

Function for factorial (iteration)

C Program: Function for factorial (iteration)

C

#include <stdio.h>

 

// Function declaration

int factorial(int n);

 

int main() {

    int num, result;

 

    // Input from user

    printf("Enter a positive integer: ");

    scanf("%d", &num);

 

    // Check for invalid input

    if (num < 0) {

        printf("Error: Factorial of a negative number doesn't exist.\n");

    } else {

        result = factorial(num);   // Function call

        printf("Factorial of %d = %d\n", num, result);

    }

 

    return 0;

}

 

// Function definition (iterative method)

int factorial(int n) {

    int fact = 1;

    for (int i = 1; i <= n; i++) {

        fact = fact * i;

    }

    return fact;

}

Output

 
OUTPUT 1 :
Enter a positive integer: 5
Factorial of 5 = 120


OUTPUT 2 :
Enter a positive integer: -4
Error: Factorial of a negative number doesn't exist.

Explanation

  1. Function factorial()
    • Takes an integer n as input.
    • Uses a for loop to multiply numbers from 1 to n.
    • Returns the factorial value to main().
  2. Main Function
    • Reads user input.
    • Checks if input is non-negative.
    • Calls factorial() and prints the result.