标题:数列求值 (本题总分:10 分)###
给定数列 1, 1, 1, 3, 5, 9, 17, …,从第 4 项开始,每项都是前 3 项的和。求
第 20190324 项的最后 4 位数字。
【答案提交】
这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一
个 4 位整数(提示:答案的千位不为 0) ,在提交答案时只填写这个整数,填写
多余的内容将无法得分。
解题思路:
主要是要注意数据溢出的问题,具体意思百度就好了
代码:
#include<stdio.h>
main()
{ int i;
int a=1,b=1,c=1;
int n=20190324;
int four;
for(i=4;i<=n;i++)
{
four=(a+b+c)%10000; //注意这里,因为题目要求只要最后四位数,有一个取余,但是,这个循环到这个位置实际的数据是很大的,会有数据溢出的问题,所以把取余提前放在这里,只在这个数的后四位数计算
a=b;
b=c;
c= four;
}
printf("%d",four); //原本我取余是放在这里的
}