求助编程

2025-06-21 22:08:54
推荐回答(1个)
回答1:

#include
/*
F(n)递归
*/
int F(int n)
{
if(n==0)
return 1;
else
return (n*F(n/2));
}

/*
非递归
*/
int nF(n)
{
int i;
int sum=1;
for(i=n;i>=1;i=i/2)
sum*=i;
return sum;
}
int main()
{
int n=5;
int sum=0;
sum=F(n);
printf("F(%d) sum=%d\n",n,sum);
sum=nF(n);
printf("nF(%d) sum=%d\n",n,sum);
}