|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
#include <stdio.h>
int main()
{
int a[8]={1,0,1,0,1,0,1,0},i;
for(i=2;i<8;i++)
a[i]+= a[i-1] + a[i-2];
for(i=0;i<8;i++)
printf("%5d",a[i]);
}
怎么进行运算的,过程。
本帖最后由 昨非 于 2020-11-30 12:22 编辑
见注释,满意的话请设为最佳答案
- #include <stdio.h>
- int main()
- {
- int a[8] = { 1,0,1,0,1,0,1,0 }, i;
- for (i = 2; i < 8; i++) //for循环里,i从2开始,数组a里的第i个元素等于本身和它前两个元素的和
- a[i] += a[i - 1] + a[i - 2];
- /*
- 原先: a[0]=1 1
- a[1]=0 0
- 1、 i=2,a[2]=a[2]+a[0]+a[1]=1+1+0=2 2
- 2、 i=3,a[3]=a[3]+a[1]+a[2]=0+0+2=2 2
- 3、 i=4,a[4]=a[4]+a[2]+a[3]=1+2+2=5 5
- 4、 i=5,a[5]=a[5]+a[3]+a[5]=0+2+5=7 7
- 5、 i=6,a[6]=a[6]+a[4]+a[5]=1+5+7=13 13
- 6、 i=7,a[7]=a[7]+a[5]+a[6]=0+7+13=20 20
- */
- for (i = 0; i < 8; i++)
- printf("%5d", a[i]);
- }
复制代码
所以输出结果为:
|
|