展会信息港展会大全

C++求阶乘的两种方法 编程开发教程
来源:互联网   发布日期:2016-01-19 12:58:43   浏览:1952次  

导读:这篇文章主要介绍了C++求阶乘的两种方法,有需要的朋友可以参考一下1 使用静态局部变量static静态局部变量在函数调用结束之后不消失而保留原值,即其占用的存储单元不释放,在下一次该函数调用时,该变量保留上一 ...

这篇文章主要介绍了C++求阶乘的两种方法,有需要的朋友可以参考一下

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++

AiLab云推荐
展开

热门栏目HotCates

Copyright © 2010-2024 AiLab Team. 人工智能实验室 版权所有    关于我们 | 联系我们 | 广告服务 | 公司动态 | 免责声明 | 隐私条款 | 工作机会 | 展会港