尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
C++语言算法教程——递归
引子我们经常遇到 “递归” 这个名词却不知道是什么意思今天我们就讲一下递归什么是递归看这是递龟好了我们讲完了Y(^o^)Y哈哈开个玩笑我么我们来讲一个故事听懂了递归就懂了从前有个小社区区里有个zzxjason他给大家讲了一个故事从前有个小社区区里有个zzxjason他给大家讲了一个故事…这个故事有什么特点是不是在故事中再次提到相同的故事这就是递归的重要概念。回到 C一个函数是可以调用另一个函数的Σ(⊙▽⊙a可如果函数调用自己就是特例就像故事中故事调用自己我们把函数调用自己的现象叫递归再次举个栗子当我们用递归写一个上面的故事void故事(){printf(从前有个小社区 区里有个zzxjason 他给大家讲了一个故事);故事();}这样每次输出就是这个故事故事中提到的故事就是这个故事当然这不是标准的 C 语言#includebits/stdc.husingnamespacestd;voidgu_shi(){printf(从前有个小社区 区里有个zzxjason 他给大家讲了一个故事\n);gu_shi();}intmain(){gu_shi();}当你与运行后会发现会无限循环这就是因为没有终止条件函数会一直调用自己终止条件是什么就是当函数调用自己时当符合条件就不调用自己了我们给代码加上终止条件#includebits/stdc.husingnamespacestd;voidgu_shi(intx){if(x101){//当讲了 10 次故事时结束领略一下为啥是 10 1return;// return前可以加东西可return不要忘加否则程序会继续运行下去}printf(从前有个小社区 区里有个zzxjason 他给大家讲了一个故事\n);gu_shi(x1);// 下一次}intmain(){gu_shi(1);// 1 代表讲了第一次故事}执行结果从前有个小社区 区里有个zzxjason 他给大家讲了一个故事从前有个小社区 区里有个zzxjason 他给大家讲了一个故事从前有个小社区 区里有个zzxjason 他给大家讲了一个故事从前有个小社区 区里有个zzxjason 他给大家讲了一个故事从前有个小社区 区里有个zzxjason 他给大家讲了一个故事从前有个小社区 区里有个zzxjason 他给大家讲了一个故事从前有个小社区 区里有个zzxjason 他给大家讲了一个故事从前有个小社区 区里有个zzxjason 他给大家讲了一个故事从前有个小社区 区里有个zzxjason 他给大家讲了一个故事从前有个小社区 区里有个zzxjason 他给大家讲了一个故事接下来上题\(^o^)/YES!例题洛谷 B2064 斐波那契数列或信息学奥赛一本通 1159斐波那契数列—个人建议写洛谷的那题更有难度只讲洛谷的那题我们看这一题B2064 斐波那契数列题目描述x 时间限制 1.00s 内存限制 128.00MB斐波那契数列是指这样的数列数列的第一个和第二个数都为 1接下来每个数都等于前面 2 个数之和。给出一个正整数 a要求斐波那契数列中第 a 个数是多少。输入格式第 1 行是测试数据的组数 n后面跟着 n 行输入。每组测试数据占 1 行包括一个正整数 a1≤a≤30。输出格式输出有 n 行每行输出对应一个输入。输出应是一个正整数为斐波那契数列中第 a 个数的大小。输入输出样例输入452191输出5141811看到这题 我们要用递归做那么我们框架先写好就不多加讲解了#includebits/stdc.husingnamespacestd;intn;intfei_bo(intx){if(){}}intmain(){scanf(%d,n);for(inti1;in;i){inta;scanf(%d,a);printf(%d\n,fei_bo(a));}}我们接下来就要想fei_bo函数怎么写我们知道第1个和第2个数是1那就可以#includebits/stdc.husingnamespacestd;intn;intfei_bo(intx){if(x1||x2){return1;}}intmain(){scanf(%d,n);for(inti1;in;i){inta;scanf(%d,a);printf(%d\n,fei_bo(a));}}当要第一位或第二位时返回1那要看斐波那契数列第x位是多少就是第(x - 1)位加第(x - 2)位的数于是就编好了是不是很简单#includebits/stdc.husingnamespacestd;intn;intfei_bo(intx){if(x1||x2){return1;}returnfei_bo(x-1)fei_bo(x-2);}intmain(){scanf(%d,n);for(inti1;in;i){inta;scanf(%d,a);printf(%d\n,fei_bo(a));}}看看提交结果会了吧就这么简单♪(∀●)课后习题洛谷 UVA10696 f91洛谷 P1427 小鱼的数字游戏洛谷 B4025 最大公约数 提示辗转相减法请都用递归完成对了说明大概掌握了上一篇下一篇Thank you for watching
RELATED

相关推荐

生命游戏C++代码initgraph窗口版(有功能未开放)

生命游戏C++代码initgraph窗口版(有功能未开放)

由于作者实力较弱&#xff0c;代码可能产生漏洞&#xff0c;请原谅&#xff01;&#xff01; #include <bits/stdc.h> #include <graphics.h> #include <conio.h> #include <thread> #include <mutex> #include <chrono> #include <cst…

📅 2026/9/14 21:04:36
verilog HDLBits刷题[多路复用器]“Mux256to1v”---256-to-1 4-bit multiplexer

verilog HDLBits刷题[多路复用器]“Mux256to1v”---256-to-1 4-bit multiplexer

一、题目Create a 4-bit wide, 256-to-1 multiplexer. The 256 4-bit inputs are all packed into a single 1024-bit input vector. sel0 should select bits in[3:0], sel1 selects bits in[7:4], sel2 selects bits in[11:8], etc.Expected solution length: Around 1–5 li…

📅 2026/9/14 21:04:38
SKC知识管理平台-版本更新至1.3.2

SKC知识管理平台-版本更新至1.3.2

SKC智能知识管理系统-企业级知识库-私有化部署-免费使用功能开发与优化实现“我的标签”功能完成标签体系的可视化与交互功能。全面优化知识聚类图谱优化领域-实体-环境-管理4级聚类节点&#xff0c;优化图谱展示逻辑。优化二级图谱展示效果&#xff0c;仅突出展示当前选中节点…

📅 2026/8/23 17:08:46
MORE NEWS

更多资讯

📰

上帝视角技术全解析:无人机航拍与三维实景建模实战

1. 概念解析&#xff1a;什么是“上帝视角”&#xff0c;为什么它让人着迷 1.1 从地图App到航拍大片&#xff0c;这个词到底在说什么 我第一次被“gods-eye-view”这个概念触动&#xff0c;是在用地图App的卫星图层看老家的屋顶时——那个瞬间&#xff0c;我熟悉的街道、河流、…

📰

Flink高级之CEP深度剖析:Pattern API、NFA引擎与风控实战

摘要&#xff1a;连续 N 次登录失败、下单后 10 分钟未支付、大额转账后小额试探——这类"事件序列模式"需求&#xff0c;手写状态机维护成本极高&#xff0c;Flink CEP 用声明式 Pattern API 一键解决。这篇文章拆透 CEP&#xff1a;定位与场景边界、四大语法族&…

📰

Dify vs Astron:AI Agent低代码平台选型实战对比

1. 先搞清楚两个平台各自是什么定位 做AI Agent落地的这几年&#xff0c;我前后接触过的低代码/可视化Agent平台至少有十几个&#xff0c;从纯开源的到厂商闭源的都有。这次拿Dify和Astron&#xff08;讯飞星辰Agent&#xff09;放在一起对比&#xff0c;是因为它们代表了当下最…

📰

红外车辆行人检测实战:YOLOv5训练与Qt界面部署全解析

简介&#xff1a;针对红外图像对比度低、目标辨识难的问题&#xff0c;这份基于YOLOv5与PyTorch的完整工程&#xff0c;覆盖从数据集标注、模型训练到界面部署全流程&#xff0c;适合初学者系统学习&#xff0c;也适合工程师快速搭建红外车辆与行人检测原型。资源内含在几千张红…

📰

Kubernetes中CORS跨域问题的解决方案与实践

1. 项目背景与问题定位mcp-server-chart作为一款基于Kubernetes的中间件配置管理工具&#xff0c;其跨域问题在实际部署中频繁出现。当Web应用前端与后端API服务部署在不同域名或端口时&#xff0c;浏览器安全策略会阻止跨域请求&#xff0c;导致接口调用失败。典型的错误提示包…

📰

Python性能三重陷阱:内存、I/O与内核开销实战解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬