c语言 求Fibonacci数列前N项的函数,从主函数输出数列,哪错了..
解决时间 2021-03-01 03:14
- 提问者网友:像風在裏
- 2021-02-28 17:40
#include
#include
void main()
{ int feibo(int n);
int n;
printf("input n");
scanf("%d",&n);
printf("%d",int feibo(int n));
}
int feibo(int n)
{int i;
int f[n]={1,1};
for (i=2;i<=n;i++)
f[i]=f[i-2]+f[i-1];
return f[i]
}
最佳答案
- 五星知识达人网友:神也偏爱
- 2021-02-28 18:06
经鉴定,LZ对于C语言中的数组/指针以及函数的相关知识点还没掌握好
这一题的正确思路应该是,设计一个函数int feibo(int n),该函数的作用是返回斐波那契数列第n项的值。主函数中获取用户输入的N,然后一个循环输出斐波那契的前N项
如果需要的话请追问,我可以根据我给你的思路提供相关代码供你参考
全部回答
- 1楼网友:枭雄戏美人
- 2021-02-28 20:34
printf("%d",int feibo(int n));
不要int
int f[n]={1,1};
数组不支持动态大小
很多错误的地方
我给你写一个吧
#include
#include
void main()
{
void feibo(int n, int* p);
int i, n;
int *p = NULL;
printf("input n\n");
scanf("%d", &n);
p = (int*)malloc(sizeof(int)*n);
feibo(n, p);
for(i = 0; i < n; ++i)
printf("%d\n", p[i]);
}
void feibo(int n, int* p)
{
int i;
p[0] = 1;
p[1] = 1;
for(i=2;i<=n;i++)
p[i]=p[i-2]+p[i-1];
}
- 2楼网友:白昼之月
- 2021-02-28 19:05
#include "stdio.h"
int fab(int n)
{
if(n==1||n==2) return 1;
else return fab(n-1)+fab(n-2);
}
void main()
{
int a,i;
printf("请输入个整数:");
scanf("%d",&a);
for(i=1;i<=a;i++)
printf("%d ",fab(i));
}
我要举报
大家都在看
推荐资讯