手机
当前位置:查字典教程网 >编程开发 >C语言 >C++求阶乘的两种方法
C++求阶乘的两种方法
摘要:1.使用静态局部变量static静态局部变量在函数调用结束之后不消失而保留原值,即其占用的存储单元不释放,在下一次该函数调用时,该变量保留上...

1.使用静态局部变量static

静态局部变量在函数调用结束之后不消失而保留原值,即其占用的存储单元不释放,在下一次该函数调用时,该变量保留上一次函数调用结束时的值。

静态局部变量赋初值实在编译时进行的,即只赋初值一次,在程序运行时它已有初值。

code:

复制代码 代码如下:

#include<iostream>

using namespace std;

int fac(int n)

{

static int f=1;

f=f*n;

return f;

}

int main()

{

int i;

for(i=1;i<=5;i++)

{

cout<<i<<"!="<<fac(i)<<endl;

}

return 0;

}

print:

复制代码 代码如下:

/*

1!=1

2!=2

3!=6

4!=24

5!=120

*/

2.使用递归的方法

首先进行退出递归的判断,然后进行递归

code:

复制代码 代码如下:

#include<iostream>

using namespace std;

int fac(int n)

{

if(n<0) return 0;

if(n==0||n==1)return 1;

if(n>1)

{

return n*fac(n-1);

}

}

int main()

{

int i;

for(i=1;i<=5;i++)

{

cout<<i<<"!="<<fac(i)<<endl;

}

return 0;

}

print:

复制代码 代码如下:

/*

1!=1

2!=2

3!=6

4!=24

5!=120

*/

【C++求阶乘的两种方法】相关文章:

C语言 数与串之间转换的方法

分享C++面试中string类的一种正确写法

解决C++中事件不响应的方法详解

C++中求组合数的各种方法总结详解

C/C++指针和取地址的方法

C++实现基数排序的方法详解

VC++中的字体设置方法详解

MFC中exe图标修改的方法

C++文件依存关系介绍

C++类中的常量介绍

精品推荐
分类导航