鱼C论坛

 找回密码
 立即注册
查看: 2675|回复: 4

C语言例题问题

[复制链接]
发表于 2012-1-17 15:48:36 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
#include <stdio.h>
void main()
{
int i;
int a[20]={1,1};
for (i=2;i<=20;i++)
{
        a[i]=a[i-2]+a[i-1];
}
}


        a[i]=a[i-2]+a[i-1];     这个a[i-2]  i不是等于2吗 2-2不是等于0  他为什么显示1
小甲鱼最新课程 -> https://ilovefishc.com
头像被屏蔽
发表于 2012-1-17 17:18:20 From FishC Mobile | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
小甲鱼最新课程 -> https://ilovefishc.com
 楼主| 发表于 2012-1-17 22:09:22 | 显示全部楼层
#include <stdio.h>
void main()
{
int i;
int a[20]={1,1};
for (i=2;i<=20;i++)
{
        a[i]=a[i-2]+a[i-1];

}
for (i=0;i<20;i++)
{
        printf ("%d\n",a[i]);
}
}

题目是 利用数组来处理 求解fibonacc数列
回顾 fibonacci数列公式 已知:a1=a2=1 an=an-1+an-2
                                    即:1,1,2,3,5,8,13,.............
过程:先定义一个20个元素的数组,并将数组的第一 第2个元素都初始化为1,其他元素初始化为0,通过公式求出其他各个各个元素的值

for (i=2;i<=20;i++)
{
        a[i]=a[i-2]+a[i-1];
这个单步调试的时候  a[i]里面的值是2   而i的值是2    a[i-2]+a[i-1]里面的值不是等于1吗
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2012-1-17 23:23:45 | 显示全部楼层
a[2]=a[0]+a[1];
a[2]=2
小甲鱼最新课程 -> https://ilovefishc.com
 楼主| 发表于 2012-1-18 21:02:35 | 显示全部楼层
a[0]+a[1]为什么等于2
小甲鱼最新课程 -> https://ilovefishc.com
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-11-10 20:46

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表