第四周上机实践项目——项目5-用递归方法求解
2016-03-23 19:20
387 查看
运行结果:
![](https://img-blog.csdn.net/20160323191645261)
运行结果:
![](https://img-blog.csdn.net/20160323191819808)
运行结果:
![](https://img-blog.csdn.net/20160323192235185)
运行结果:
/* *Copyright (c)2016,烟台大学计算机与控制工程学院 *All rights reserved. *文件名称:main.cpp *作 者:郭永恒 *完成日期:2016年3月23日 *版 本 号:v1.0 * *问题描述: *(1):编写递归函数求出n的阶乘 *(2):写出1*3*...*n的递归式,编写出递归函数求解 *(3):用递归求两个数的最大公约数 *(4):递归,输出斐波那契数列的低20个数 */
//问题(1) #include <iostream> using namespace std; int jc(int n) { if(n == 1) return 1; return n*jc(n-1); } int main() { int n; cin >> n; cout << jc(n) << endl; return 0; }
运行结果:
//问题(2) #include <iostream> using namespace std; int f(int n) { if(n == 1) return 1; return n * f(n-2); } int main() { int n; cin >> n;//根据题目,此处的n只能是奇数 cout << f(n) << endl; return 0; }
运行结果:
//问题(3) #include <iostream> using namespace std; int f(int m,int n) { if(n == 0) return m; return f(n,m%n); } int main() { int m,n; cin >> m >> n; cout << f(m,n) << endl; return 0; }
运行结果:
//问题(4) #include <iostream> using namespace std; int fib(int n); int main() { cout << fib(20) << endl; return 0; } int fib(int n) { if(n == 1 || n == 2) return 1; return fib(n-2) + fib(n-1); }
运行结果:
相关文章推荐
- 对理想团队模式构建的设想以及对软件流程的理解
- MySQL索引背后的数据结构及算法原理
- Eclipse 新建Dynamic Web Project时, 项目默认的输出目录为build\classes,如何将Web项目的默认编译输出目录改为WebContent/WEB-INF/classe
- Qt 调用 Java 方法笔记
- PS切图小技巧
- 01Linux_BASH基本操作
- 友元类,友元函数
- Could not generate CGLIB subclass of class [class com.sun.proxy.$Proxy22]
- mac IntelliJ 15破解方法
- 泛型
- Android 对ScrollView滚动监听,实现美团、大众点评的购买悬浮效果
- 定期删除IIS日志文件
- WIN7下DLL劫持,注入
- 单例设计模式详细解析
- ZOJ 3790 Consecutive Blocks 最多删k个数求最长连续相同序列长度
- 离线缓存与客户端存储总结
- maven环境快速搭建
- C++复习要点总结之四New和delete使用
- Dubbo基础篇_02_Zookeeper注册中心安装测试
- 剑指offer 6 旋转数组的最小数字