3.递归-给定正整数n(项数),返回响应的斐波那契数值
#include <stdio.h> unsigned int Loop_Fibonacci(unsigned int n); unsigned int Recu_Fibonacci(unsigned int n); int main() { //给定正整数n(项数),返回响应的斐波那契数值 //斐波那契额数列(1、1、2、3、5、8、13...) int n = 30; printf("循环实现:%u\n", Loop_Fibonacci(n) ); printf("递归实现:%u\n", Recu_Fibonacci(n) ); return 0; } //循环实现 /* n1 = 1 n2 = 1 n3 = n1 + n2 = 2 n1 = n2 1 n2 = n3 2 n3 = n1 + n2 = 3 n1 = n2 = 2 n2 = n3 = 3 n3 = n1 + n2 */ unsigned int Loop_Fibonacci(unsigned int n) { int a1 = 1; int a2 = 1; if( n <= 2 ) { return 1; }else{ int n1 = a1; int n2 = a2; int n3 = n1 + n2; for (int i = 4; i <= n; ++i) { n1 = n2; n2 = n3; n3 = n1 + n2; //printf("%d\n", n3); } return n3; } } //递归实现 /* 1 1 2 3 5 8 13 */ unsigned int Recu_Fibonacci(unsigned int n) { return n<=2 ? 1 : Recu_Fibonacci(n -1) + Recu_Fibonacci(n -2); }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· 字符编码:从基础到乱码解决
· SpringCloud带你走进微服务的世界