Fibonacci数列 C 这么写为什么不对啊?

Fibonacci数列的递推公式为:Fn=Fn-1+Fn-2,其中F1=F2=1。

当n比较大时,Fn也非常大,现在我们想知道,Fn除以10007的余数是多少。

int main()
{
    int n,m,p;
    cin>>p;
    m=p-1;
    int a[p];
    a[0]=1,a[1]=1;
    for(n=2;n<=m;n++)
        a[n]=a[n-1]+a[n-2];
    cout<<(a[m]%1007)<<endl;
    return 0;
}

菜鸟学生 代码写的难看,跪求大神帮忙,好无助啊。

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 以帮助更多的人 ^-^