C语言中fibonacci数列的问题

题目:一个叫y的数组里面定义20个元素 前两个都为1 其余为0 用fibonacci求后面18位数字
运行环境:WIN8.1
软件:VS2013
我的代码是这样的:

#include<stdio.h>
#include<stdlib.h>
int main()
{   


    int i, z, y[20] = { 1, 1 }; //定义变量,并为y数组赋值
    z = 0;
    for (i = 2; i <= 19; i++);
    {                               

            y[i] = y[z] + y[z+1];   
            //下面是我按着程序推算的结果 为啥输出结果就不一样呢 还一点都不一样..
        //y[2] = y[0] + y[1] =2
        //y[3] = y[1] + y[2] =3
        //y[4] = y[2] + y[3] =5

    } 
    for (i = 19; i >= 0; i--) //输出数组y中的内容
    {
        printf("%d\n", y[i]);
    }
    system("pause");
    return 0;
}

输出结果:
图片说明

查看全部
claysystem
r4bbit
2015/09/10 23:25
  • fibonacci
  • 数学
  • 点赞
  • 收藏
  • 回答
    私信

5个回复