本题要求实现一个计算Fibonacci数的简单函数,并利用其实现另一个函数,输出两正整数m和n之间的所有Fibonacci数。所谓Fibonacci数列就是满足任一项数字是前两项的和(最开始两项均

 输入 20 100

输出 21 34 55 89

 

#include 
int fib(int n);
int print_fn(int m,int n);


int main(void) {
	int m,n;
	scanf("%d %d",&m,&n);

	print_fn(m,n);

	return 0;
}

int print_fn(int m,int n) {
	int i,flag = 0;

	for(i = 1; fib(i) <= n; i++) {
		if(fib(i) >= m) {
			printf("%d ",fib(i));
			flag = 1;
		}
	}
	if(flag == 0) {
		printf("No Fibonacci number");
	}
}
int fib(int n) {
	if(n == 1||n == 2) {
		return 1;
	} else {
		return fib(n - 1) + fib(n - 2);
	}

}

你可能感兴趣的:(算法,c++,开发语言)