编辑代码

#include <iostream>

using namespace std;

void ditui(int n) {
	int F1 = 0, F2 = 1, Fn;
	for (int i = 0; i < n; i++) {
		Fn = F1 + F2;
		cout << "Fib(" << i + 1 << ")=" << Fn << endl;
		int temp = F1;
		F1 = F2;
		F2 = Fn;
	}
}

int digui(int n) {
	if (n == 0)
		return 0;
	else if (n == 1)
		return 1;
	else
		return digui(n - 1) + digui(n - 2);
}

int main() {
	int n;
	cin >> n;
	cout << "使用递归方法输出的Fibonacci数列的前" << n << "项为" << endl;
	for (int i = 0; i < n; i++) {
		cout <<
		     "Fib(" << i + 1 << ")"
		     << "=" << digui(i) << endl;
	}
	cout << "使用递推方法输出的Fibonacci数列的前" << n << "项为" << endl;
	ditui(n);
	return 0;
}