C语言用分别用递归和循环求数字的阶乘的方法
2015-11-16 10:53
856 查看
以下代码均为 自己 实现,嘻嘻!
参考文章:/article/2630308.html
View Code
有关于算法的介绍请点击我上面给的CSDN的链接。
参考文章:/article/2630308.html
循环法
int CalFactorial(int x) { int sum=1; for(int i=x;i>0;i--) { sum=sum*i; } return sum; }
递归法
//递归 int CalculateFactorial(int x) { if(x>1) { return CalculateFactorial(x-1)*x; } else if(x==1) { return x; } }
完整代码
//#include <stdlib.h>
#include "stdafx.h"
using namespace std;
//递归 int CalculateFactorial(int x) { if(x>1) { return CalculateFactorial(x-1)*x; } else if(x==1) { return x; } }
//循环
int CalFactorial(int x) { int sum=1; for(int i=x;i>0;i--) { sum=sum*i; } return sum; }
int _tmain(int argc, _TCHAR* argv[])
{
//int a=CalculateFactorial(6);
int a =CalFactorial(6);
printf_s("%d\n",a);
system("pause");
return 0;
}
View Code
有关于算法的介绍请点击我上面给的CSDN的链接。
相关文章推荐
- 【C语言】 冒泡排序子例
- 《Effective C++》Rule 18: 让接口容易被正确使用,不易被误用
- C++学习第四课—串
- 【C语言】 冒泡排序
- C++基础::非类型模板参数在STL中的应用
- 切忌在类的初始化列表中调用类的成员函数
- C++88个注意点之1~5
- 关于数据类型与指针的小笔记--初始化问题&&数组
- C++ 动态特性
- 13.c/c++程序员面试宝典-宏定义
- C语言函数调用及栈帧分析
- 几种常见排序算法的c语言实现
- 明白volatile的意义
- C++新标准:列表初始化
- R性能优化
- C++中堆和栈的区别,自由存储区、全局静态存储区和常量存储区
- C++重载,覆盖与隐藏
- C语言字节对齐问题
- c++中,什么时候用 A a;和什么时候用A a=new A;
- 《拓扑排序》hdu acm 5.2.4 c++优先队列 邻接表