唱着歌屠龙
机器学渣
                                   
 

    菲波那契数列

 
 

时间限制:1秒    内存限制:256兆

题目描述

1, 1, 2, 3, 5, 8, 13, 21...... 为菲波拉契数列(Fibonacci Sequence),该数列从第 3 项开始,每项都可表示成前2 项的和,

即:F(i)=F(i-1)+F(i-2),i>=3。

编程计算第 n 项的值。

输入格式

输入有多个case, 每个case是1行,只有一个整数n (1 <= n <= 93).

输入以EOF结束

输出格式

对于每个case输出1行

每行只包含一个整数

样例输入

3

样例输出

2
 1 // Problem#: 6273
 2 // Submission#: 1601185
 3 // The source code is licensed under Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License
 4 // URI: http://creativecommons.org/licenses/by-nc-sa/3.0/
 5 // All Copyright reserved by Informatic Lab of Sun Yat-sen University
 6 //求斐波那列数列
 7 #include <stdio.h>
 8 
 9 int main()
10 {
11     unsigned long long  i , n , j , k , m;//定义为超长无符号整型变量 
12     
13     while (scanf("%llu",&n)!= EOF )//输入数列的项数,条件为连续循环直到输入Ctrl+D时才结束 
14     {
15           m=j=k=1;//初始化中间变量以及数列的数值 
16   for( i = 3;i <= n ; i++)//从第三项开始遵从斐波那列规律,按逻辑赋值 
17      {
18             m=j+k;
19             j=k;
20             k=m;
21       }       
22     printf ("%llu\n",m);//输出第n项的数列的数值 
23 
24     }
25 
26     return 0;
27 }

得好好看看清楚,自己没做出来,老师上课列出来的答案

posted on 2012-11-06 21:50  唱一支歌  阅读(151)  评论(0编辑  收藏  举报