C语言小程序

    技术2022-06-12  67

    /*    斐波拉契数列,求数列的第N个数的值,并求前N个数的和1   1   2   3   5   8   13   21   34*/# include <stdio.h>int main(void){int n;int f1,f2,f3;int i;

    int sum =0;1=1;f2=1;printf("请输入您需要求的项的数:");scanf("%d",&n);if(n==1){  f3=1;

      sum =1;}else if(n==2){  f3=1;

      sum=2;}else{  for(i=3;i<=n;i++)  {   f3=f1+f2;   f1=f2;   f2=f3;

       sum=f3+sum+2;

      }}

     printf("%d/n",f3);

     printf("%d/n",sum);return 0;}

     

     

    另外一种写法:

    递归算法求斐波拉契数列前n项的和#include <stdio.h>long f(int n){if(n==1) return 1;if(n==2)return 2;return f(n-1)+fib(n-2);}long fsum(int n){ if(n==1) return fib(n);return f(n)+fsum(n-1);}


    最新回复(0)