
递归调用函数:
#define _CRT_SECURE_NO_WARNINGS
int fun(int n);
#include<stdio.h>
int main()
{//斐波那契数列递归求法int a[100] = { 0,1,1 };int n, i, sum = 0;scanf("%d", &n);for (i = 1; i <=n; i++){sum += fun(i);}printf("%d\n", sum);
}
int fun(int n)
{if (n == 1 || n == 2)return 1;elsereturn fun(n - 1) + fun(n - 2);//等于前两项之和;return 0;
}
用数列的的方法求解:
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
int main()
//数列求int a[100] = { 0,1,1 };int n, i, sum = 0;scanf("%d", &n);for (i = 3; i <=n; i++){a[i] = a[i - 1] + a[i - 2];}for (i = 0; i <=n; i++){sum += a[i];}printf("%d\n", sum);
}

















