私が知る限り、これは機能するはずです。
最初の 2 つの要素は 1 に設定されます (最初の 0 は無視します)。for ループは配列をループすることになっています。フィボナッチ数は前の 2 つの数の合計に等しいので、それらを加算してから表示します。
出力はすべて 2 で、その理由はよくわかりません。
注:私は答えを直接探しているわけではありませんが、自分でこれを理解できる方法を探しています.
//Fibonacci sequence
#include <stdio.h>
int main(void) {
int fib_numbers[40] = {1, 1}, i;
for(i = 1; i < 40; i++) {
fib_numbers[i] = fib_numbers[i] + fib_numbers[i - 1];
printf("\t%d\n", fib_numbers[i]);
}
return 0;
}