3个回答
展开全部
程序如下:
{
static double result = 1;
result *= (n-1)*n;
return (result);
}
{
static double result = 1;
result *= (n-1)*n;
return (result);
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
C(编程语言) 计算机 C/C++ 编程 编程语言
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2019-12-18
展开全部
静态局部变量在程序执行到该对象的声明处时被首次初始化,即以后的函数调用不再进行初始化,它始终驻留在全局数据区,直到程序运行结束。
所以相当于每次进入fact,前一个数的阶乘的结果还在,举个例子就是说,算4!阶乘时,此时的sum已经是2!,所以你只要再算sum*(4*3)或(sum*4)*3
static double sum=1;
sum*=n;
sum*=(n-1);
return sum;
所以相当于每次进入fact,前一个数的阶乘的结果还在,举个例子就是说,算4!阶乘时,此时的sum已经是2!,所以你只要再算sum*(4*3)或(sum*4)*3
static double sum=1;
sum*=n;
sum*=(n-1);
return sum;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询