#include
void matrix_power(unsigned long ,unsigned long,
unsigned long ,unsigned long,
int ,unsigned long *,unsigned long *,unsigned long *,
unsigned long *);
unsigned long fibonacci(int n)
{
unsigned long a,b,c,d;
if(n>1,&xa,&xb,&xc,&xd);
*aa=xa*xa+xb*xc;
*bb=xa*xb+xb*xd;
*cc=xc*xa+xd*xc;
*dd=xc*xb+xd*xd;
}
}
int main()
{
int x;
while(scanf("%d",&x)!=EOF)
{
x=fibonacci(x);
printf("%d",x);
printf("\n");
}
getch();
return 0;
}
我打注释的那个地方,n==1时,不是已经把那个*aa赋值了吗,为啥后面的*aa输出的值不对呢,那个xa,xb等却有值
不用看完,就看后面一点就行了,这程序挺短,就参数多了点,谢谢,好的话会追加的
|