试题C:数列求值
【问题描述】
给定数列1,1,1,3,5,9,17,…, 从第4项开始,每项都是前3项的和。求第20190327项的最后4位数字。
【答案提交】
这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个4位整数(提示:答案的千位不为0),在提交答案时只填写这个整数,填写多余的内容将无法得分。
代码:
#include<stdio.h>
int a[20190325];
int main()
{
int i;
a[1]=a[2]=a[3]=1;
for(i=4;i<=20190324;i++)
{
a[i]=(a[i-1]+a[i-2]+a[i-3])%10000;//以防数组超限
}
printf("%d",a[20190324]);
return 0;
}
本题输出结果为:
注:
1.本题我的思路就是利用数组进行求解,核心思想类似于斐波那契数列。
2.还有就是开数组可以在主函数main()函数以外开,比在main()内开要大的多。