该程序提示用户输入任何整数,查找输入数的阶乘,并在屏幕上显示输出。我们将使用用户定义的递归函数来执行任务。这里我们有一个函数find_factorial
,它以递归的方式调用自己,来找出输入数的阶乘。我们在下面的程序中涉及用户交互,但是如果你不想要那个部分,那么你可以简单地为变量num
赋一个整数值并忽略scanf
语句。简而言之,您可以以任何您想要的方式调整它,每种情况的逻辑都是相同的。
查找阶乘的程序
/* Program Name: Find Factorial
Written by: Chaitanya Singh
Published on: beginnersbook.com
*/
#include<stdio.h>
int find_factorial(int);
int main()
{
int num, fact;
//Ask user for the input and store it in num
printf("\nEnter any integer number:");
scanf("%d",&num);
//Calling our user defined function
fact =find_factorial(num);
//Displaying factorial of input number
printf("\nfactorial of %d is: %d",num, fact);
return 0;
}
int find_factorial(int n)
{
//Factorial of 0 is 1
if(n==0)
return(1);
//Function calling itself: recursion
return(n*find_factorial(n-1));
}
输出:
Enter any integer number: 4
factorial of 4 is: 24