永发信息网

c语言 求Fibonacci数列前N项的函数,从主函数输出数列,哪错了..

答案:3  悬赏:0  手机版
解决时间 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));

}

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯