首页 > 其他分享 >斐波那契数列

斐波那契数列

时间:2023-09-17 22:57:07浏览次数:27  
标签:20 数列 将斐波 int 斐波 那契

将斐波那契数列前20项写入文件fab.txt中,并将斐波那契数列前20项之和输出到屏幕上,要求斐波那契数列第n项的计算用递归函数实现。

#include <stdio.h>

// 递归函数来计算斐波那契数列的第n项
int fibonacci(int n) {
    if (n <= 1)
        return n;
    return (fibonacci(n - 1) + fibonacci(n - 2));
}

int main() {
    FILE *file = fopen("fab.txt", "w");
    if (file == NULL) {
        printf("cannot open this file");
        return 1;
    }

    int n = 20;
    int sum = 0;

    printf("前20项斐波那契数列:\n");
    fprintf(file, "前20项斐波那契数列:\n");
    
    for (int i = 0; i < n; i++) {
        int fib = fibonacci(i);
        printf("%d ", fib);
        fprintf(file, "%d ", fib);
        sum += fib;
    }

    printf("\n前20项斐波那契数列之和:%d\n", sum);
    fprintf(file, "\n前20项斐波那契数列之和:%d\n", sum);

    fclose(file);
    
    return 0;
}

 

标签:20,数列,将斐波,int,斐波,那契
From: https://www.cnblogs.com/daiang/p/17710040.html

相关文章

  • 关于梯形面积和等差数列
    1.问题今天在学习压缩存储三角矩阵的时候,由于要计算上三角前(i-1)的个数,上方呈一梯形形状,就有想法梯形面积公式和等差数列求和公式及其相似,之间有什么联系呢?2.解决引用一篇文章有关链接:https://zhuanlan.zhihu.com/p/555204644?utm_id=0......
  • 斐波那契数列的实现
    斐波那契数列是数学上的一道看上去没有规律但事实上他是有规律的,其规律就是后一位数等与它前两位数相加。例如:1,1,2,3,5......等等。下面就是用代码实现斐波那契数列#include<stdio.h>intsum(inta){ if(a<=2){ return1; }else{ intc=sum(a-1)+sum(a-2);//关键代码,不断的......
  • P3200 [HNOI2009] 有趣的数列
    原题这题我\(O(n^2)\)的做法竟然没有想出来,反思QwQ首先\(O(n^2)\)的做法很好想,我们考虑从小到大往数组里填数,显然我们要求任何时刻编号为奇数的位置要填的比编号为偶数的位置要不少才行于是我们设\(dp_{i,j,k}\)表示填了前\(i\)个数,奇数位填的个数为\(j\),偶数位填的个数为\(k\)......
  • 复习 - 斐波那契数列
    斐波那契数列(Fibonaccisequence)前言:斐波那契数列是最基础最常见的了,但是隔很久不仅是对语言,对这个也开始生疏了。这里做一次复习并用几种常用语言来实现。又称黄金分割数列、因数学家莱昂纳多·斐波那契(LeonardodaFibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”,指的......
  • #yyds干货盘点# LeetCode程序员面试金典:等差数列划分
    1.简述:如果一个数列 至少有三个元素 ,并且任意两个相邻元素之差相同,则称该数列为等差数列。例如,[1,3,5,7,9]、[7,7,7,7] 和 [3,-1,-5,-9] 都是等差数列。给你一个整数数组 nums ,返回数组 nums 中所有为等差数组的 子数组 个数。子数组 是数组中的一个连续序列。 示例1......
  • 斐波那契数列
    1描述:这里用Js数组模拟数列。letfn=[];  fn[0]=1;  fn[1]=1;  fn[2]=2----------fn[0]+fn[1];fn[3]=3----------fn[1]+fn[2];这样子:fn=[1,1,2,3,5];设fn的索引为n; 问n==100时候。fn[n]的值。 functiongen_feiblo(num){letinit_arr=[1,1];for(leti=......
  • 代码随想录算法训练营第二天| 977.有序数组的平方,209.长度最小的子数列,59.螺旋矩阵Ⅱ
    977.有序数组的平方双指针法因为负数平方后也会变大,所以较大的平方值只可能在靠近两端的位置,越往中间走平方值必定越小。所以,在原数组两端各定义一个指针,慢慢往中间走,然后把平方值按顺序放到新数组里即可。classSolution{public:vector<int>sortedSquares(vector<i......
  • 详细讲解斐波那契数
    前置知识斐波那契数列是一种经典的数学序列,它以递归的方式定义。斐波那契数列的前两个数是0和1,之后的每个数都是前两个数之和。换句话说,数列中的每个数(从第三个数开始)都是前两个数之和。斐波那契数列的数学表达式如下:F(0)=0F(1)=1F(n)=F(n-1)+F(n-2)(对于n≥2)根......
  • 【算法】斐波那契数列与台风的故事
    在小岛的一个海滨小镇上,住着一个名叫苏菲的女孩。苏菲一家人靠海为生,她的生活简单而朴素,与大自然和谐共生。每天,苏菲都会来到海边,欣赏那美丽的日出和日落,感受着大海的呼吸。然而,小岛的美丽风光并非一成不变。每年夏季,热带气旋活跃,台风频繁登陆,给小岛带来了严重的危害。有一天,苏......
  • 通过c语言来实现斐波那契数列
    斐波那契数列是一组第一位和第二位为1,从第三位开始,后一位是前两位和的一组递增数列,像这样的:0、1、1、2、3、5、8、13、21、34、55......这个数列从第3项开始,每一项都等于前两项之和。以下通过c语言来实现这个程序#include<stdio.h>//1123581321345589intmain(){ /......