再帰関数 int fib(int n)を定義し,再帰呼出しによりfib(n)の値を求める。
こちらも,n=30までのフィボナッチ数を求めて表示せよ。
で下のようにつくりました。コンパイルはできましたが
実行すると
第何項までのフィボナッチ数? n=30
Segmentation fault (core dumped)
のようにでてきてmもとめられません。
やはりf0=0とf1=1を定義しないとできないのでしょうか?
教えてください
#include <stdio.h>
int fib(int);
main()
{
int n, i ,f;
printf("第何項までのフィボナッチ数? n=");
scanf("%d",&n);
for(i=2; i<=n; i++)
{
f=fib(n);
printf("F%d = %d\n",n, fib);
}
}
fib(int n)
{
int f;
f=fib(n-1)+fib(n-2);
}