C语言斐波那契数列求和两种方法

文章提供了两种计算斐波那契数列的方法,一是通过递归函数调用,二是使用数列的迭代方法。在递归方法中,函数fun基于前两个数的和返回结果,而在数列方法中,通过存储前两个数并更新新项来计算。最终,两种方法都用于计算给定项数的斐波那契数列的总和。
摘要由CSDN通过智能技术生成

递归调用函数:

#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;
	else
		return 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);
}

  • 5
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值