[关闭]
@chawuciren 2018-11-14T14:27:34.000000Z 字数 416 阅读 594

斐波那契数列重写

未分类


  1. #include<stdio.h>
  2. #include<stdlib.h>
  3. int matrix(int n);
  4. int main(){
  5. int n=0;
  6. while(1){
  7. printf("Input n:");
  8. scanf("%d",&n);
  9. if(n==0)
  10. break;
  11. n=matrix(n);
  12. printf("%d\n",n);
  13. }
  14. return 0;
  15. }
  16. int matrix(int n){
  17. int a[2][2]={//矩阵
  18. {1,1},
  19. {1,0}
  20. };
  21. int i[2]={1,0};//第一对数
  22. int res[2]={0};
  23. for(int j=0;j<n;j++){
  24. res[0]=i[0]*a[0][0]+i[1]*a[0][1];//矩阵乘法
  25. res[1]=i[0]*a[1][0]+i[1]*a[1][1];
  26. i[0]=res[0];
  27. i[1]=res[1];
  28. }
  29. return i[1];
  30. }

在此输入正文

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注