带数组的fibonacci c-规划
我正在写一个C程序,用迭代函数输出斐波那契数。我想使用一个包含斐波那契数的数组 程序给了我错误的斐波那契值,我看不出有任何错误 请帮忙 这是我的程序:带数组的fibonacci c-规划,c,C,我正在写一个C程序,用迭代函数输出斐波那契数。我想使用一个包含斐波那契数的数组 程序给了我错误的斐波那契值,我看不出有任何错误 请帮忙 这是我的程序: #include <stdio.h> int fibonacciL(int unsigned value){ int i; const int MAX = value; int fibo[MAX]; fibo[0]=0; fibo[1]=1;
#include <stdio.h>
int fibonacciL(int unsigned value){
int i;
const int MAX = value;
int fibo[MAX];
fibo[0]=0;
fibo[1]=1;
for(i=2;i<value+1;i++)
{
fibo[i]= fibo[i-1] + fibo[i-2];
return fibo[value];
}
}
int main(){
int value;
printf("Iterativ Fibonacci\n");
printf("Enter a Number:");
scanf("%d", &value);
printf("For the number %d the value is: %d\n",value,fibonacciL(value));
return 0;
}
#包括
int fibonacciL(int无符号值){
int i;
常量int MAX=值;
int fibo[MAX];
fibo[0]=0;
fibo[1]=1;
对于(i=2;i
- 您为数组
fibo
分配的元素比所需元素少一个
- 在计算之前,您返回了
fibo[value]
int fibonacciL(int无符号值){
int i;
常量int MAX=值;
int fibo[MAX+1];/*再分配一个元素,使fibo[value]可用*/
fibo[0]=0;
fibo[1]=1;
对于(i=2;iouu),我忽略了这一点,抱歉,感谢您的快速回复
int fibonacciL(int unsigned value){
int i;
const int MAX = value;
int fibo[MAX+1]; /* allocate one more element so that fibo[value] become available */
fibo[0]=0;
fibo[1]=1;
for(i=2;i<value+1;i++)
{
fibo[i]= fibo[i-1] + fibo[i-2];
}
return fibo[value]; /* move this to right place */
}