【算法筆記】Codeup 100000568H

本專欄僅僅用於個人記錄刷題過程,如有更好的解決方法,可以留言哦

題目要求

輸入一個正整數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;
} 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章