C语言用递归的方法求!n。

时间:2025-04-24 13:46:14

思路:

若要用递归函数来处理,需要构建怎样的子函数

子函数是否要返回值,是否要用void

时刻记着用if语句来终止递归

#include<>

int main()
{
	int n;//n为要求的!n。 
	int jc(int n);//声明函数。 
	scanf("%d",&n);//输入n 
	printf("%d",jc(n));//输出!n 
	return 0;
 } 

int jc(int n)//定义子函数 
{
	int x=1,i;//x为这里!n要输出的值 
	if(n==1)//用if条件语句来控制终止递归 
	{
		x=1;//!1=1 
	}
	else
	{
		for(i=1;i<=n;i++)//常规求阶乘的算法 
		{
			x=i*x;	
		}
	}
	return x;//返回x,得到!n 
}