可以利用静态局部变量在在内存中不自动释放的特性,去计算阶乘,详细代码如下:
#include <iostream>
using namespace std;long CalcResult(int num)
{static int result = 1;result = num*result;return result;
}int main()
{//采用静态局部变量计算阶乘for (int i = 1;i<=5;i++){long res = CalcResult(i);cout<<i<<"! = "<<res<<endl;}system("pause");return 0;
}
程序运行结果如下: