本专栏仅仅用于个人记录刷题过程,如有更好的解决方法,可以留言哦
题目要求
输入一个正整数n,求Fibonacci数列的第n个数。Fibonacci数列的特点:第1,2个数为1,1。从第3个数开始,该数是前面两个数之和。
要求输入的正整数n不超过50.
要求输入
一个不超过50的正整数
样例
20
要求输出
Fibonacci数列的第n个数,末尾输出换行。
样例
6765
可AC代码如下
#include<stdio.h>
int main(){
int a = 1, b = 1;
int n;
scanf("%d", &n);
//控制输入的正整数不超过50
if(n > 50 || n <= 0){
return 0;
}
//前两个数都是1
if(n == 1 || n ==2){
printf("1\n");
}
for(int i = 2; i < n; i++){
int c = a + b;
a = b;
b = c;
}
printf("%d\n",b);
return 0;
}