13.Fibonacci数

描述
无穷数列1,1,2,3,5,8,13,21,34,55...称为Fibonacci数列,它可以递归地定义为
F(n)=1 ...........(n=1或n=2)
F(n)=F(n-1)+F(n-2).....(n>2)
现要你来求第n个斐波纳奇数。(第1个、第二个都为1)
输入
第一行是一个整数m(m<5)表示共有m组测试数据
每次测试数据只有一行,且只有一个整形数n(n<20)
输出
对每组输入n,输出第n个Fibonacci数
样例输入
3
1
3
5
样例输出
1
2
5
 1 /*法一
 2 #include<stdio.h>
 3 int F(int n) {
 4     if(n == 1 || n == 2) { 
 5         return 1;
 6     }
 7     else {
 8         return F(n - 1) + F(n - 2);
 9     }
10 }
11 
12 int main( ) {
13     int m, n;
14     scanf("%d", &m);
15     while(m--) {
16         scanf("%d", &n);
17         printf("%d
", F(n));
18     }
19     return 0;
20 }
21 */
22 #include<stdio.h>
23 int main( ) {
24     int m, n, i, s1, s2;
25     scanf("%d", &m);
26     while(m--) {
27         scanf("%d", &n);
28         for(i = 3, s1 = s2 = 1; i <= n; i ++) {
29             s1 = s1 + s2;
30             s2 = s1 - s2;
31         }
32         printf("%d
", s1);
33     }
34     return 0;
35 }
View Code
原文地址:https://www.cnblogs.com/tong69/p/5773714.html