计算斐波那契数(递归、迭代)(1,1,2,3,5.....)

递归和非递归分别实现求第n个斐波那契数

例如:

输入:5 输出:5

输入:10, 输出:55

输入:2, 输出:1

递归求第n个斐波那契数

可以看函数递归 -CSDN博客

cpp 复制代码
//递归实现求第n个斐波那契数
int F(int n) {
	if ( n == 1 || n == 2) {
		return 1;
	}
	else if (n == 0) {
		return 0;
	}
	else {
		return F(n - 1) + F(n - 2);
	}
}
int main() {
	int n = 0;
	scanf("%d", &n);
	int r = F(n);
	printf("%d", r);
	return 0;
}

非递归实现求第n个斐波那契数(迭代)

cpp 复制代码
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
int fact(int n) {
	int a = 1;
	int b = 1;
	int c = 1;
	while (n > 2) {
		c = a + b;
		a = b;
		b = c;
		n--;
	}
	return c;
}
int main() {
	int n = 0;
	scanf("%d", &n);
	int a = fact(n);
	printf("%d", a);
	return 0;
}
相关推荐
前进的李工33 分钟前
Agent 学习笔记 05:系统提示词应该怎么写
笔记·学习·prompt·agent·个人开发·few-shot·ai应用开发
Zenova EdgeOS36 分钟前
Go 工业边缘错误处理实战:用 errors 构建可追溯错误链
开发语言·数据库·golang
取名真是1 小时前
Python 算法知识点从基础到进阶
开发语言·python·算法
罗西的思考1 小时前
【轻量化复刻大模型 / KIMI K3】KDA 模块交互式演示
人工智能·算法·机器学习
FRing031 小时前
vue2干货总结3(computed计算属性、watch监听器)
开发语言·前端·vue.js·vue2
Fatbobman(东坡肘子)2 小时前
快速消失的硬盘容量 -- 肘子的 Swift 周报 #160
开发语言·人工智能·redis·ios·swiftui·iphone·swift
揽星河..2 小时前
【C语言】底层程序设计
c语言·开发语言
JavaPub-rodert2 小时前
从零搭建通用管理后台:ShiyuAdmin 的 Go、React 与 RBAC 实践
开发语言·react.js·golang
蒸蒸yyyyzwd3 小时前
后端学习笔记三个知识
笔记·八股
nm_zfyjt3 小时前
信息流广告投放优化实践:线索成本评估模型与转化链路重构(家装建材案例)
算法·重构·内蒙古朋友圈广告服务商·内蒙古朋友圈获客