Implementation of factorial() Function
To implement a factorial() function in C that calculates the factorial of a non-negative integer, you can create a recursive function. Here's an example of how to implement the factorial() function:
Example:
#include <stdio.h>
// Function to calculate the factorial of a non-negative integer
unsigned long long factorial(int n) {
if (n == 0) {
return 1; // Base case: factorial of 0 is 1
} else {
return n * factorial(n - 1); // Recursive case
}
}
int main() {
int number = 5;
unsigned long long result = factorial(number);
printf("Factorial of %d is %llu\n", number, result);
return 0;
}
In this example:
- The
factorial() function takes an integer n as its parameter and calculates the factorial recursively. The base case is when n is 0, in which case the function returns 1. In the recursive case, it multiplies n by the factorial of n - 1.
- In the
main() function, a number (5 in this case) is passed to the factorial() function, and the result is stored in the result variable.
- Finally, the program prints the result, showing the factorial of the input number.
Output:
Factorial of 5 is 120
You can use this factorial() function to calculate the factorial of any non-negative integer by passing it as an argument to the function. Note that the result is of type unsigned long long to handle larger factorials without overflowing.