1113: 递归调用的次数统计(函数专题)
时间限制: 1 Sec 内存限制: 128 MB
提交: 2795 解决: 2006
[提交] [状态] [讨论版] [命题人:admin]
题目描述
如下程序的功能是计算 Fibonacci数列的第n项。函数fib()是一个递归函数。请你改写该程序,计算第n项的同时,统计调用了多少次函数fib(包括main()对fib()的调用)。

#include<stdio.h>
int fib(int k);

int main(void )
{
int n;
scanf("%d", &n);
printf("%d\n", fib(n));
return 0;
}

int fib(int k)
{
if(k == 1 || k == 2)
return 1;
else
return fib(k-1) + fib(k-2);
}

输入
输入一个正整数n。

输出
输入包含两行,第一行是一个整数,表示第n项的值;第二行输入递归调用了多少次,具体格式见输出样例。

样例输入
20

样例输出
6765
递归调用了13529次

来源/分类


#include<stdio.h>
int m=0;
int b(int m);
int fib(int k)
{m++;if(k == 1 || k == 2)return 1;elsereturn fib(k-1) + fib(k-2);return m;
}
int b(int n)
{printf("%d\n", fib(n));  printf("递归调用了%d次",m);
}
int main(void)
{int m,n;scanf("%d", &n);b(n);
}

1113: 递归调用的次数统计(函数专题)相关推荐

  1. 递归调用、高阶函数、装饰器

    一.递归调用 递归调用: 一个函数自己调用自己, 变成一个循环了,最多一个函数递归调用自己999,作用和运行循环是一样的,区别就是循环是没有次数限制的,递归调用最多999次,超过999次会报错: 递归 ...

  2. 在c语言中允许函数递归调用,c语言允许函数的递归调用吗

    c语言允许函数的递归调用吗 允许.C语言中的函数直接或间接调用自己的过程叫递归. 一.递归的两个必要条件 1.存在限制条件,当满足这个条件时,递归便不再继续. 2.每次递归调用之后越来越接近这个限制条 ...

  3. [ZZULI]1092~1113(函数专题)

    1092: 素数表(函数专题) 题目描述 输入两个正整数m和n,输出m和n之间的所有素数. 要求程序定义一个prime()函数和一个main()函数,prime()函数判断一个整数n是否是素数,其余功 ...

  4. python3_函数_形参调用方式 / 不定长参数 / 函数返回值 / 变量作用域 / 匿名函数 / 递归调用 / 函数式编程 / 高阶函数 / gobal和nonlocal关键字 / 内置函数

    1.形参的调用方式 1. 位置参数调用 2. 关键词参数调用 原则: 关键词参数调用不能写在位置参数调用的前边 def test1(name, age):print("name:" ...

  5. 函数的递归调用(C++)

    C++程序设计_中国大学MOOC(慕课)的学习笔记 函数直接或间接调用自己称为递归调用.C++语言允许函数递归调用,如图(a)所示为直接递归调用,如图(b)所示为间接递归调用. eg.用函数的递归求n ...

  6. MATLAB 函数的递归调用 例题

    MATLAB 函数的递归调用 例题 eg:利用函数的递归调用,求n!. 函数文件: function f=Untitled49(n) if n<=1f=1; elsef=Untitled49(n ...

  7. 七 递归与二分法、匿名函数、内置函数

    一 递归与二分法 一.递归调用的定义 二.递归分为两个阶段:递推,回溯 三.python中的递归效率低且没有尾递归优化 四.可以修改递归最大深度 五. 二分法 二 匿名函数 一. 什么是匿名函数? 二 ...

  8. java调用wvsc.exe_c语言 函数的调用方法

    欢迎加入 编程爱好者 QQ群 群号 57616770 中都只有一个主函数main(), 但实用程序往往由多个函数组成.函数是C源程序的基本模块,通过对函数模块的调在第一章中已经介绍过,C源程序是由函数 ...

  9. 嵌入式 Linux 开发工具篇问题整理//C语言测试(杨辉三角、递归调用实现阶乘、计算器、统计字符串出现次数)//2018.07.12.//

    嵌入式 Linux 开发工具篇问题整理 1. 嵌入式开发与传统开发的区别?(同类问题:单片机开发与嵌入式开发的区别)             是否有无操作系统:     2. 移植操作系统的好处有哪些 ...

最新文章

  1. linux vim project,vim插件project的用法
  2. java程序配置dns后超时_处理apache HTTP客户端保持活动连接断开,超时和DNS更改
  3. python动态页面元素爬取_python编程练习:爬虫爬取动态网页批量下载气象站数据...
  4. js进阶 9-5 js如何确认form的提交和重置按钮
  5. 使用.NET Core优雅获取并展示最新疫情数据
  6. Debug解决问题方法论
  7. Elon Musk: The mind behind Tesla, SpaceX, SolarCity
  8. overridden/inherited关键字的读书笔记
  9. Kali linux安装拼音、双拼、五笔拼音输入法:fcitx-table-wbpy中文输入法步骤详解
  10. 仿微信/支付宝的自定义提现密码输入(一)
  11. 华为鸿蒙麒麟玉兔_华为“鸿蒙”实锤了!还有朱雀、麒麟、鲲鹏,网友:华为注册了一本《山海经》...
  12. 手写springIOC、AOP
  13. 信息增益,信息增益率,Gini
  14. 6.22 Java练习(根据输入的值计算BMI的值,根据标准判断BMI的值并给出相应健康提示。)
  15. 科成计算机系学习部,学习部
  16. 低配置的电脑应该用哪个系统?
  17. Arduino UNO使用Syn6288进行简单开发案例
  18. 产品说明书—分类宝(WasteSorting)
  19. 不懂时间管理的本质,你只会越来越忙
  20. c语言中进行大小排序的问题(少量排序)

热门文章

  1. linux比较两台时间,两台linux机器时间同步
  2. 回归的误差服从正态分布吗_盘点10大回归类型:总有一款深得你心
  3. 二分k均值 matlab,Matlab函数kmeans:K-均值聚类
  4. php生成格式 word文档,php使用phpword生成word文档
  5. c语言 cstring “+”: 运算符不起任何作用;应输入带副作用的运算符_国家计算机二级考试C语言选择题高频考点汇总,干货满满...
  6. 解决ORA-00257: 归档程序错误。在释放之前仅限于内部连接
  7. 编写一个函数,该函数能判断一个英文句子str(带空格)中是否含有某个单词w,如“How old are you?”含有“old”。在main函数中输入一个英文句子,再输入一个单词,如果英文句子中含有那
  8. JAVA实现onvif的ptz控制_使用Onvif协议进行设备PTZ云台控制
  9. C语言 函数不定长参数 - C语言零基础入门教程
  10. Python sum函数- Python零基础入门教程