【题目描述】
菲波那契数列是指这样的数列: 数列的第一个和第二个数都为1,接下来每个数都等于前面2个数之和。给出一个正整数k,要求菲波那契数列中第k个数是多少。
【输入】
输入一行,包含一个正整数k。(1 ≤ k ≤ 46)
【输出】
输出一行,包含一个正整数,表示菲波那契数列中第k个数的大小。
【输入样例】
19
【输出样例】
4181
数列1,2时都为1,从3开始计算值。
#include<iostream> #include<cstdio> #include<math.h> using namespace std; int main() { int i,m,n,m1,m2; cin>>n; if(n==1||n==2) m=1; m1=1; m2=1; for(i=3;i<=n;i++) {m=m1+m2; m1=m2; m2=m; } printf("%d",m); return 0; }