不知道为什么显示错误
题目
已知一个数列从第1项开始的前3项为0、0、1,以后的各项都是其相邻的前3项之和。要求使用递归方法编写函数fun(n),求该数列第n项的值,返回值为长整型,并写出相应的主函数。
![](https://profile-avatar.csdnimg.cn/default.jpg!4)
C++课堂作业怎么改错呢?
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
4条回答 默认 最新
- jiayuqicz 2024-06-01 21:26关注
代码如下,printf函数中,在调用fun函数时,不需要“long”关键字。
#include <stdio.h> long fun(int n); int main() { int n; printf("请输入所要求的项:"); scanf("%d", &n); printf("所求%d项的值为:%ld\n", n, fun(n)); } long fun(int n) { if (n == 1 || n == 2) return 0; else if (n == 3) return 1; else return fun(n - 1) + fun(n - 2) + fun(n - 3); }
输出结果:
请输入所要求的项:10 所求10项的值为:44
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用
悬赏问题
- ¥50 请教 麒麟系统挂载怎么安装
- ¥15 如何在ns3中实现路径的自由切换
- ¥20 SpringBoot+Vue3
- ¥15 IT从业者的调查问卷
- ¥65 LineageOs-21.0系统编译问题
- ¥30 关于#c++#的问题,请各位专家解答!
- ¥15 App的会员连续扣费
- ¥15 不同数据类型的特征融合应该怎么做
- ¥15 用proteus软件设计一个基于8086微处理器的简易温度计
- ¥15 用联想小新14Pro